アクションのリモートコマンドが正常に動作しない

いつもお世話になっております。
以下、ご教授頂きたく宜しくお願い致します。

【環境】
ZabbixVer:Zabbix 3.0.5
AgentOS:RHEL 7.3

【内容】
アクションで、リモートコマンドのカスタムスクリプトにて、
Agent側でシェルスクリプトを実行しましたが望む動作になりませんでした。
本来はシェルスクリプトの実行結果としてログを出力するのですが、
手動で実行したときはログを出力しますが、
Zabbixのリモートコマンドで実行するとログが出力されません。
 ※なお、このシェルスクリプトに対して引数の受け渡しはございません。シェル単体で完結しております。

【質問内容】
Agent側はAllowrootを有効としており、root権限で起動しております。
また、EnableRemoteCommandsも有効となっておりシェルスクリプト自体は実行されていることを確認済みです。
上記のため、手動及びZabbixリモートコマンドでもroot権限でシェルスクリプトをキックしている認識ですが、
実行結果が異なる理由として、何が考えられるでしょうか。
 ⇒シェルについてはシェルスクリプト内でbashを指定しているため、動作シェルが異なることはありません。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー fripper の写真

スクリプト内で、環境変数等に依存する実装は有りませんか?

エージェントからのスクリプト実行においては、
通常のログイン等の手順を踏む実行形態ではないため、PATH環境変数などの
環境変数の設定状況が異なることがあります
( .bashrc や .bash_profile のようなログイン時に適用されるスクリプトが適用されていない環境になる)

一度、以下のようなダミーのスクリプトを実行させてみるなどして
今回実行させようとしているスクリプトに必要な環境が揃っていることを
確認されてみてはいかがでしょうか

====
#!/bin/bash

(
/bin/echo "------start -----"
/bin/date
/bin/echo "foo-bar-baz"
/usr/bin/printenv
/usr/bin/whoami
/usr/bin/id
/bin/echo "${PATH}"
/bin/echo "------end -----"
) >> /path-for-logfile/logfile.log

# end of file
====

ユーザー kaeru の写真

fripper様
ご返信ありがとうございます。
また調査用スクリプトについてもありがとうございます。

>通常のログイン等の手順を踏む実行形態ではないため
失念しておりました。(cronで動作させても同様に動作しませんでした。)
ご指摘いただいた通り、足りていなかった環境変数をシェルスクリプトに定義し、
相対パスで記載していた箇所も絶対パスに修正したところ
ZabbixAgentからのリモートコマンドで正常に動作しました。
ご回答誠にありがとうございました。