問題タブ [logrotate]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
archive - rsyslog 動的ファイル名ログ ローテーション
すべてのホストがすべてのログを RSyslog サーバー (ver 5.8.10) に送信しています。
RSyslog は、次のテンプレートを使用してログ ファイルを保存します -
したがって、host11 からの Windows イベント ログは /var/log/x/host/2013-09-24/host11/EvntSLog.log に記録されます。
logrotate をセットアップして、1 日分のログ ファイルを圧縮して「/nfs/archive/」に送信するようにしたいと思います。したがって、上記のログ ファイルは、アーカイブすると /nfs/archive/2013-09-24.tgz のようになります。ここでは、個々のログ ファイルを圧縮しているのではなく、ディレクトリ全体を圧縮していることに注意してください。
logrotate/cron を使用してこれを達成するにはどうすればよいですか?
apache - logrotate 構成はディレクトリを指すことができますか
主な質問: 対象のログをディレクトリにすることは、logrotate 構成で有効なオプションですか?
のワイルドカード表記を使用した例をいくつか見てきまし たが、 のオプションで同様の結果が得られる/var/log/example/*.log
かどうかに興味があります。/var/log/example
man ページを確認しましたが、ワイルドカード構文の例しか見つかりませんでした。これが唯一の方法であると私に信じさせました。ただし、ドキュメントには、ワイルドカードを使用しない例を参照して、「最後のセクションでは、/var/log/news 内のすべてのファイルのパラメーターを定義しています」という文があり、疑問が生じました。
質問の背景: httpd インストールの logrotation をセットアップすることを目的
としたlogrotate レシピ(apache2 コミュニティ クックブックから) を処理する際に、作成された構成はディレクトリを指します。logrotate -d
は、操作が実行されていることを示しています (私が思うに) が、ディレクトリに含まれるファイルはいずれも でローテーションされていませんlogrotate -f
。明らかに私は logrotate に慣れていないので、誰かが私を啓発してくれることを望んでいました (チケット/プルリクエストをログに記録する前に)。
solr - logrotate 後に solr デーモンを再起動する必要がありますか?
これは、 「Solr を自動的に開始する方法」への回答のフォローアップ です。
上記のように、solr をデーモンとして実行しています。しかし、ログに 250GB 以上を使用していることに気付きました。logrotate を使用してログサイズを調整することを検討しています。上記の logrotate conf ファイルには、solr を再起動する postrotate コマンドがあります。
solr に対して常に読み書きを行う重要なプロセスをいくつか実行しています。そのため、定期的に再起動したくありません。後回転の再起動は厳密に必要ですか?
アップデート:
これをdelaycompressで試し、デーモンを再起動しませんでした。新しいログ ファイルが作成されましたが、solr は古いファイル (solr.log.1 に名前が変更された) に書き込みを続けました。
delaycompress を使用せずに再試行したところ、solr.log と solr.log.1 の両方が空になりました。しかし、df は、大量のログが消える前と同じディスク使用量を示しています!
logrotate - Logrotate が自動的に機能しない (サイズ制限を使用)
私のローテーションがうまくいっていないようです。logrotate を手動で実行すると、正常に動作します。ログで確認できるので、logrotate が実行されます。ここに私が持っているものがあります:
どんな手掛かり?
tomcat - Tomcat: log4j がログ ファイルをローテーションしない
ログファイルのローテーションに奇妙な問題があります。
を使用しますlog4j
。
の[...]/apache-tomcat-5.5.23/conf/log4j.xml file have:
このファイルを使用して Tomcat を実行します。
しかし、今のところファイルは 1.1G です。約 1 週間前に正常に動作しました。
最初のアイデアは、誰かがそれをロックしたというものでした-しかし、私は他の誰もログインできない他のサーバーでこのTomcatをテストし、186Mのファイルサイズを持っています...
この問題の他の原因は何ですか?ありがとう。
ubuntu-12.10 - Ubuntu 12.10 の logrotate の問題
Ubuntu 12.10 では、次のエントリを「/etc/logrotate.d」パスに追加しました。
以下は、「/etc/cron.daily/logrotate」ファイルがどのように見えるかです:
ログがローテーションされることを期待していましたが、ローテーションされていません。ここで私が間違っていることは何ですか?
ステータス ファイルには、問題のファイルに対して logrotate が実行されたことが示されていますが、ローテーションされたログは表示されません。
また、「/etc/logrotate.conf」ファイルは次のようになります。
logrotate の手動実行の出力は次のとおりです。
linux - CentOS 6.4 logrotate show エラー許可が拒否されました
CentOS 6.4 OS の tomcat の公式サイトから tomcat7 tar.gz ファイルをダウンロードしました (バイナリ ディストリビューション tar.gz 、yum ではありません)。logrotate を使用して tomcat ログをローリングしたいと考えています。したがって/etc/logrotate.d/tomcat7
、次の内容でファイルを作成します。
このコマンドで役割をテストしましたlogrotate /etc/logrotate.conf
。全て大丈夫。
しかし、翌日、Tomcat ログが自動的にロールされないことがわかりました。
/etc/cron.daily/logrotate
したがって、デバッグするためにファイルを変更する必要があります。/usr/sbin/logrotate /etc/logrotate.conf >/dev/null 2>&1
行をに変更しました/usr/sbin/logrotate /etc/logrotate.conf >> /var/log/logrotate.log 2>&1
。
Finally, I find the result in /var/log/logrotate.log
is error: error opening /usr/tomcat7/logs/catalina.out: Permission denied
Strangely, only tomcat log receives permission denied. All the other logs but tomcat log.
Permission denied ?! why? why root permission denied?
@user3069508
Many thanks! I find the file /var/log/audit/audit.log
exists. Then I searched the file with key word logrotate
and I find the error like this:
type=AVC msg=audit(1386185162.298:210505): avc: denied { write } for pid=740 comm="logrotate" name="catalina.out" dev=sda5 ino=48235357 scontext=system_u:system_r:logrotate_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:usr_t:s0 tclass=file type=SYSCALL msg=audit(1386185162.298:210505): arch=c000003e syscall=2 success=no exit=-13 a0=1d33440 a1=2 a2=7fffff6730cf a3=746165726373662f items=0 ppid=737 pid=740 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=94 comm="logrotate" exe="/usr/sbin/logrotate" subj=system_u:system_r:logrotate_t:s0-s0:c0.c1023 key=(null)
But I'm not goot at selinux
. Could you help me how to solve this problem?
cron - uwsgi logrotate が機能しない
uwsgi logrotate の構成ファイルをセットアップしました。テストしたところ、うまくいくように見えました。
しかし、cron ジョブは実行され、何も起こりませんでした。何が間違っている可能性がありますか?私のエントリーは
cronログで見ることができます
「何が起こったのか」についての詳細をどこかで取得できますか? logrotate ジョブの詳細な出力ですか?