如何在netsnmp中查看DEBUGMSGTL的日志

如何在netsnmp中查看DEBUGMSGTL的日志,snmp,agent,net-snmp,snmpd,Snmp,Agent,Net Snmp,Snmpd,我正在尝试编写一个snmp子代理,它使用网络snmp支持的agentX。 首先,我使用了net snmp常见问题解答中的示例代码: 从示例代码 (示例demon.c、nstagentsbagentobject.c、nstagentsbagentobject.h),我构建了一个子代理,它可以使用agentX执行snmpget和snmpset 我的问题是: 从nstAgentSubagentObject.c中的代码中,有许多跟踪代码,如下所示: DEBUGMSGTL(("nstAgentSubag

我正在尝试编写一个snmp子代理,它使用网络snmp支持的agentX。 首先,我使用了net snmp常见问题解答中的示例代码:

从示例代码 (示例demon.c、nstagentsbagentobject.c、nstagentsbagentobject.h),我构建了一个子代理,它可以使用agentX执行snmpget和snmpset

我的问题是: 从nstAgentSubagentObject.c中的代码中,有许多跟踪代码,如下所示:

DEBUGMSGTL(("nstAgentSubagentObject",
                "Initializing the nstAgentSubagentObject module\n"));
但是我到处都看不到日志

我试图通过以下方式启动snmpd(snmp恶魔)
snmpd-f-DnstAgentSubagentObject-Lf/tmp/snmp.log


但我还是看不到日志。有谁能告诉我如何查看DEBUGMSGTL的日志吗?

而不是使用
-D nstagentsubagent对象启动
snmpd
,您希望在启动时将该命令行选项传递给您的子代理

在本教程中,建议使用以下命令启动子代理:

% ./mysubagent &
要启用更多调试消息,请尝试使用以下命令启动它:

% ./mysubagent -D nstAgentSubagentObject

如果我没记错的话,应该会将调试输出打印到控制台。如果希望将其写入文件,可以将其与
-L
选项结合使用。

而不是使用
-d nstagentsubagent对象启动
snmpd
,您希望在启动子代理时将该命令行选项传递给它

在本教程中,建议使用以下命令启动子代理:

% ./mysubagent &
要启用更多调试消息,请尝试使用以下命令启动它:

% ./mysubagent -D nstAgentSubagentObject

如果我没记错的话,应该会将调试输出打印到控制台。如果您希望将其写入文件,可以将其与
-L
选项结合使用。

仅供参考,您还可以将以下内容放入snmp.conf文件中,并在其中旋转选项:

debugTokens nstAgentSubagentObject
doDebugging 1

但是,另一个答案是正确的:您需要在代码将被命中的地方打开调试,它位于子代理中(两者都将读取snmp.conf文件)。

FYI,您还可以将以下内容放入snmp.conf文件中,并在其中旋转选项:

debugTokens nstAgentSubagentObject
doDebugging 1
但是,另一个答案是正确的:您需要在代码将被命中的地方打开调试,它位于子代理中(两者都将读取snmp.conf文件)。

我可以设置标志:

-Dverbose
或者,如果要查看所有日志:

-Dall
我可以设置标志:

-Dverbose
或者,如果要查看所有日志:

-Dall