如何查看 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) 例如,我有一个简单的 bash 文件
#!/bin/bash
cd ~/hello
ls
Run Code Online (Sandbox Code Playgroud)
如何让它在执行之前显示每个命令?Windows 批处理脚本中“@echo off”的效果正好相反。
我正在寻找一种基本上遵守 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
我正在寻找一种通过 iptables 规则跟踪数据包的简单方法。这与日志记录无关,因为我不想记录所有流量(而且我只想为很少的规则设置 LOG 目标)。
类似于用于 Iptables 的 Wireshark。或者甚至可能类似于编程语言的调试器。
谢谢克里斯
注意:它不一定是一个花哨的 GUI 工具。但它必须做的不仅仅是显示一个包裹柜台左右。
更新:看起来好像我们找不到任何提供所需功能的东西。在这种情况下:让我们至少找到一种基于 iptables 日志记录的好技术——它可以很容易地打开和关闭,并且不需要冗余地编写 iptables 规则(必须为-j LOGand编写相同的规则-j ...)
偶尔我会遇到具有高处理器中断时间百分比的服务器(Windows 2003 和 2008)。有没有办法查看导致中断的程序或设备?
我怎么知道我的 iptables 规则丢弃了多少数据包?
是否有任何调试机制可以查看哪个规则是丢弃我的数据包或接受它?
给定如下内核堆栈跟踪,您如何确定发生问题的特定代码行?
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加上偏移量转换为实际行号是困难的部分。
假设这是针对标准发行版提供的内核,我知道其确切版本和内部版本号,那么获取必要元数据并进行相应查找的过程是什么?
我有一个小的 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)
我想:一个目录中有多少文件太多了?(从网络下载数据)是相关的,但我不再有文件了。 …
有没有办法通过运行带有 -x 选项的 bash 脚本将显示的信息发送到文件,同时不更改运行脚本的用户看到的标准输出?
这是我想在我们经常使用的 bash 脚本中实现的调试功能。
非常感激。
我正在尝试在 Ubuntu 上调试应用程序 - 我需要监听文件打开尝试(即使文件不存在)。
Process Monitor(以前称为FileMon)在 Windows 上可用 - Ubuntu 的实用程序带上有什么?
谢谢!
阿什利
debugging ×10
linux ×3
bash ×2
iptables ×2
kernel ×2
performance ×2
scripting ×2
ansible ×1
ext4 ×1
filesystems ×1
hard-drive ×1
interrupts ×1
ip ×1
smtp ×1
stderr ×1
stdout ×1
ubuntu ×1
utilities ×1
windows ×1