FreeBSDに入れたZABBIXでproc.numが使えない!?

この記事は2年以上前に書いたものです。
そのため情報が古い可能性があります。ご了承ください。m(_ _)m

ようなので、調べていたら、FreeBSD 4.11 and proc.num not working?にサポートしていないっぽい、
事がかかれていた。

ソース見ると、、、
・libs/zbxsysinfo//freebsd.c

ZBX_METRIC  parameters_specific[]=
/*  KEY         FLAG    FUNCTION    ADD_PARAM   TEST_PARAM */
・・・
{"proc.num",        CF_USEUPARAM,   PROC_NUM,       1,  "inetd,,"},
・・・

・src/libs/zbxsysinfo/freebsd/proc.c
int PROC_NUM(const char *cmd, const char *param, unsigned flags, AGENT_RESULT *result)

で、proc.numに該当する処理をしてそうだけど、
HAVE_PROC_1_STATUSが定義されていないと、SYSINFO_RET_FAILを返却するだけの関数になってしまうようだ。

HAVE_PROC_1_STATUSが定義されるところを探したところ、、、
・configure.in

・・・
dnl Check for file /proc/1/status
AC_MSG_CHECKING(for file /proc/1/status)
if test -r /proc/1/status; then
AC_MSG_RESULT(yes)
AC_DEFINE(HAVE_PROC_1_STATUS,1,[Define to 1 if file '/proc/1/status' should be used.])
else
AC_MSG_RESULT(no)
fi
・・・

/proc/1/status が読めれば有効になるようだけど、
FreeBSDには、/proc/*/status は・・・有る。
???

じゃぁなんでサポートしてないんだろう・・・。
気が向いたらソース見てみよう。

【参考】
procfs(5)

カテゴリー: サーバ管理 タグ: , , , パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です