标签: debugging

如何查看 ansible 命令的标准输出?

如何查看 ansible-playbook 命令的标准输出?-v 只显示 ansible 输出,而不是单个命令。如果我能立即弄清楚如何执行此操作,那就太好了,因此如果出现故障或挂起,我可以了解原因。

例如

- name: print to stdout
  action: command echo "hello"
Run Code Online (Sandbox Code Playgroud)

会打印

TASK: [print variable] ******************************************************** 

hello
Run Code Online (Sandbox Code Playgroud)

debugging stderr stdout ansible

225
推荐指数
4
解决办法
43万
查看次数

如何让 bash 脚本在执行之前打印出每个命令?

例如,我有一个简单的 bash 文件

#!/bin/bash
cd ~/hello
ls
Run Code Online (Sandbox Code Playgroud)

如何让它在执行之前显示每个命令?Windows 批处理脚本中“@echo off”的效果正好相反。

scripting bash debugging

95
推荐指数
5
解决办法
12万
查看次数

如何设置一个假的 SMTP 服务器来捕获所有邮件?

我正在寻找一种基本上遵守 RFC 的 smtp 服务,除了它不是发送邮件,而是简单地将其记录到文件中

[date] sent mail to <address>
Run Code Online (Sandbox Code Playgroud)

管他呢。我可以在大约半小时内将它与我在 python 中需要的最低限度的功能一起使用,但如果有一个更好的现有项目,我宁愿使用它。

需要它的原因是调试一个应用程序,该应用程序不断发送 7* 它应该发送的邮件量。

编辑:并且已经问过:https : //stackoverflow.com/questions/1006650/dummy-smtp-server-for-testing-apps-that-send-email

smtp debugging

55
推荐指数
4
解决办法
6万
查看次数

Iptables 调试器

我正在寻找一种通过 iptables 规则跟踪数据包的简单方法。这与日志记录无关,因为我不想记录所有流量(而且我只想为很少的规则设置 LOG 目标)。

类似于用于 Iptables 的 Wireshark。或者甚至可能类似于编程语言的调试器。

谢谢克里斯

注意:它不一定是一个花哨的 GUI 工具。但它必须做的不仅仅是显示一个包裹柜台左右。

更新:看起来好像我们找不到任何提供所需功能的东西。在这种情况下:让我们至少找到一种基于 iptables 日志记录的好技术——它可以很容易地打开和关闭,并且不需要冗余地编写 iptables 规则(必须为-j LOGand编写相同的规则-j ...

ip debugging iptables packet-analyzer

50
推荐指数
3
解决办法
3万
查看次数

如何找出导致 Windows 中断的原因?

偶尔我会遇到具有高处理器中断时间百分比的服务器(Windows 2003 和 2008)。有没有办法查看导致中断的程序或设备?

windows performance debugging kernel interrupts

46
推荐指数
2
解决办法
7万
查看次数

Iptables 中的调试规则

我怎么知道我的 iptables 规则丢弃了多少数据包?

是否有任何调试机制可以查看哪个规则是丢弃我的数据包或接受它?

debugging iptables

35
推荐指数
3
解决办法
9万
查看次数

内核堆栈跟踪到源代码行

给定如下内核堆栈跟踪,您如何确定发生问题的特定代码行?

kernel:  [<ffffffff80009a14>] __link_path_walk+0x173/0xfb9
kernel:  [<ffffffff8002cbec>] mntput_no_expire+0x19/0x89
kernel:  [<ffffffff8000eb94>] link_path_walk+0xa6/0xb2
kernel:  [<ffffffff80063c4f>] __mutex_lock_slowpath+0x60/0x9b
kernel:  [<ffffffff800238de>] __path_lookup_intent_open+0x56/0x97
kernel:  [<ffffffff80063c99>] .text.lock.mutex+0xf/0x14
kernel:  [<ffffffff8001b222>] open_namei+0xea/0x712
kernel:  [<ffffffff8006723e>] do_page_fault+0x4fe/0x874
kernel:  [<ffffffff80027660>] do_filp_open+0x1c/0x38
kernel:  [<ffffffff8001a061>] do_sys_open+0x44/0xbe
kernel:  [<ffffffff8005d28d>] tracesys+0xd5/0xe0
Run Code Online (Sandbox Code Playgroud)

虽然我可以轻松找到函数调用——但将__link_path_walk加上偏移量转换为实际行号是困难的部分。

假设这是针对标准发行版提供的内核,我知道其确切版本和内部版本号,那么获取必要元数据并进行相应查找的过程是什么?

linux debugging kernel

22
推荐指数
3
解决办法
3万
查看次数

ext4 文件列表在一个包含大量文件的特定目录中非常慢

背景

我有一个小的 logrotate 失误...... Logrotate 会通过失误旋转存档的日志,导致我的/var/log/. 当我发现有什么不对劲的时候,/var/log/已经包含了几百万个文件......

我设法(在一些脱发和 find/sed/grep 魔法之后)删除了所有有问题的文件并修复了我的 logrotate 配置。并认为一切都很好......

问题

每当我ls/du -hs或以其他方式列出/var/log/(现在包含 80mb 的档案/日志和最多几百个文件)的内容时,执行此操作的过程会挂起一两分钟。我确实相信这在某种程度上与 logrotate 事故有关,但我不确定,可能是其他原因。无论如何,我不知道从哪里开始调试或寻找解决方案。请帮助:3

其他信息

uname -a
Linux xxx 3.3.8-gentoo #18 SMP Sat Sep 21 22:44:40 CEST 2013 x86_64 Intel(R) 
Core(TM)2 CPU 4400 @ 2.00GHz GenuineIntel GNU/Linux

cat /proc/meminfo 
MemTotal:        2051552 kB
MemFree:           75612 kB
Buffers:            9016 kB
Cached:          1740608 kB
SwapCached:            0 kB

CFQ IO scheduler + SLUB allocator 
Run Code Online (Sandbox Code Playgroud)

我想:一个目录中有多少文件太多了?(从网络下载数据)是相关的,但我不再有文件了。 …

performance filesystems ext4 debugging

17
推荐指数
1
解决办法
2182
查看次数

将 bash -x 输出发送到日志文件而不中断标准输出

有没有办法通过运行带有 -x 选项的 bash 脚本将显示的信息发送到文件,同时不更改运行脚本的用户看到的标准输出?

这是我想在我们经常使用的 bash 脚本中实现的调试功能。

非常感激。

scripting linux bash debugging

16
推荐指数
2
解决办法
9522
查看次数

相当于 Linux 的 SysInternals FileMon?

我正在尝试在 Ubuntu 上调试应用程序 - 我需要监听文件打开尝试(即使文件不存在)。

Process Monitor(以前称为FileMon)在 Windows 上可用 - Ubuntu 的实用程序带上有什么?

谢谢!

阿什利

linux ubuntu hard-drive debugging utilities

14
推荐指数
2
解决办法
8408
查看次数