cronからスクリプトを実行するときに似たような問題がある人がいるかどうか不思議です。このスクリプト行は、opentsdb_daemon.logファイルをopentsdb_daemon_with_pid.log
にコピーする必要があります。現在、openTSDBは1つのPIDでのみ実行されています。プロセスをpidからlog_file_nameにストリップする(cronから実行したときに異常な動作)
!/bin/sh
cp -f /opt/opentsdb/opentsdb-2.2.0/var/log/opentsdb/opentsdb_daemon.log "/opt/opentsdb/opentsdb-2.2.0/var/log/opentsdb/opentsdb_daemon_pid_$(ps -ef | grep [o]pentsdb | awk '{print $2}').log
正常に実行されます。ファイルopentsdb_daemon_pid_76079.log
が作成されますが、fron cronを実行すると、次のようなものが作成されます。opentsdb_daemon_pid_63453?63454?76079.log
同じような効果を持ったcronユーザーから実行しようとしました。私はどんなアドバイスにも非常に感謝しています。
この 'ps -ef | grep [o] pentsdb | awk '{print $ 2}'を別にしてください。それはあなたにヒントを与えるでしょう。または、ここに出力を投稿すると、私はあなたにヒントを与えます – RomanPerekhrest
コピー/ペーストエラーだと思っていますが、コマンドの最後に二重引用符がありません – Esteban
また、cronデーモンはエラーを記録しますか?それで、あなたはそれを提供することができますか? – Esteban