問題タブ [syslog-ng]
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.
php - syslog-ng がリッスン デーモンを停止したかどうかは、どのようにわかりますか?
syslog-ng
(経由で)フックするPHPプログラムを作成しましたが、syslog-ng.conf
基本的には次のとおりです。
whereprocess()
とcleanup()
は私が定義したものです。
私が直面している問題は、cleanup(2)
呼び出されないことであり、プログラムが終了する前に実行する必要があります。
SIGTERM、SIGHUP、および SIGPIPE を使用してキャッチしようとしましpcntl_signal()
たが、アプリケーションのその部分は正常に動作しているようです (PHP プロセスで kill -1 を使用すると、シグナル ハンドラーが呼び出されて実行されますcleanup()
)。これらのメッセージを syslog-ng から取得します。
ストリームがブロックされているため、PHP がシグナルハンドラーを呼び出さないと考えて、STDIN を非ブロックに設定しようとしました。それもうまくいきませんでした。私のシグナルハンドラは呼び出されませんでした。
syslog-ng がアプリケーションを停止しようとしていることをどのように知ることができるので、クリーンアップを行うことができますか?
ありがとう、トム
更新: 1 から 31 までのすべてのシグナルをキャッチしようとしましたが、syslog-ng を再起動しても (または SIGTERM で強制終了しても) 何も受信しません。
log4j - syslog-ngで$PROGRAMを抽出するために、より高度なテンプレートを使用できますか?
Javaで2つのApacheSyslogAppenderを使用してSyslogにメッセージを送信しています。私のConversionPatternsは次のとおりです。
次に、異なるLog4Jカテゴリを構成して、一方または両方のアペンダーに異なるメッセージを送信します。
私のsyslog構成ファイルには、次のものがあります。
このように、私が欲しいのは、JBossサーバーの名前に置き換えられ/var/log/syslog-ng/JBoss/intg/Applications/MyApp/
たファイル/var/log/syslog-ng/JBoss/intg/Instances/${jboss.server.name}/
にログインすることです。${jboss.server.name}
Application-MyApp
代わりに、とというフォルダにログが書き込まれますInstance-${jboss.server.name}
。
Syslogでtemplate()ディレクティブを使用して、メッセージからの値を適切に抽出し、それぞれ$PROGRAM
MyAppとを取得することは可能${jboss.server.name}
ですか?
前もって感謝します
リッチ
ps:明確にするために、${jboss.server.name}
どこでも適切に拡張されています。
c++ - Syslogからデータを取得する方法-NG/Syslog
ポートでリッスンし、SyslogおよびSyslog-NGからデータを受信するC++ソケットアプリを作成しようとしています。それがソケットをどのように通過するかについてのドキュメントはどこかにありますか?
syslog-ng - リモートファシリティにsyslog-ngする方法
syslog-ngを実行しているホストがあります。ローカルですべての作業を正常に実行します(ログファイルの作成など)。ただし、すべてのログをリモートマシン、具体的にはリモートマシンの1つのファシリティ(local4)に転送したいと思います。宛先内の書き換え(set-facility)とテンプレート(構文エラー)を試してみましたが、役に立ちませんでした。
django - syslog-ngは、ログファイルのハンドラー名に<14>を追加します
syslog-ngをバージョン3.0から3.1にアップグレードした後、次のように、django Webサイトのsyslogファイルのハンドラー名の前に<14>、場合によっては<12>が表示されます。
<14>ログを取り除く方法を知っている人はいますか?
regex - syslog-ng はどのようにヘッダーを検証しますか?
ヘッダーが正しい形式 (pri、タイムスタンプ、ホスト名) であることを syslog-ng がどのように検証するのか疑問に思っています。この目的で正規表現を使用していますか?
syslog - syslog メッセージ形式と混同している
syslog メッセージの形式について少し混乱しています。syslog メッセージを解析するプログラムを作成する必要があります。syslog-ng インスタンスで取得した内容を読むと、次のようなメッセージが表示されます。
本当のメッセージ (この場合は Apache アクセス ログ メッセージ) を明確に判断できます。残りは、syslog メッセージ自体に関するメタデータです。
ただし、RFC 5424を読むと、メッセージの例は次のようになります。
構造化データなし
または構造化データを使用
だから今、私は少し混乱しています。正しい syslog メッセージ形式は何ですか? RFC 5424がRFC 3164を廃止した仕様バージョンの問題ですか?
mongodb - afmongoを使用したsyslog-ngハングアップ
しばらくしてプロセスがハングアップした後、syslog-ngを使用してmongoにデータを送信しています。tcpdump は送信データを示しません。debuggint syslog-ng, i found Destination queue full, drops message;... 数回表示された後、通常に戻ります。最後に、それは二度と戻ってきません。kill -1 $PID を使用すると解決できます。原因不明ですが、調べてみました。誰かアイデアがあれば?
linux - syslog-ngがSELinuxTYPEsyslogd_exec_tで起動できないのはなぜですか?
私はsyslog-ngをCentOS5.7システムにインストールしてSELinuxを適用しています。
次のエラーのため、「servicesyslog-ngstart」でsyslog-ngサービスを起動できません。
私はグーグルでチェックし、以下のように取得します:
そして私はSELinuxタイプを見ることができます
しかし、同じSELinuxタイプ「syslogd_exec_t」では、syslogdは「servicesyslog start」によって起動できますが、SELinuxがsyslog-ngの起動を許可できないのはなぜですか?それらはすべて「スケジューラパラメータ」を取得する必要があると思います。
そして、syslog-ngをSELinuxタイプ「syslogd_exec_t」で動作させるにはどうすればよいでしょうか。当然、これらはすべてsyslogメカニズムで動作するからです。
ありがとう、EM
python - Python Logging で送信元ホスト アドレスを設定するには?
IPMI によって多数のサーバーからセンサー データとイベントを解析する、Python で記述されたスクリプトがあります。次に、グラフ データを 1 つのサーバーに送信し、エラー ログを別のサーバーに送信します。ロギング サーバーは Syslog-ng+Mysql です
そのため、タスクはログを所有者ごとに保存することですが、スクリプト ホストごとには保存しません。
いくつかのコード例:
そのため、ログが他のホストに属していることを syslog-ng に伝えることができるように、コードを拡張する必要があります。または他のデザイン。
何か案は?
更新:
LogAdapter を使用する方法があるようです。しかし、どのように使用できますか:
TcpDump を介してメッセージを探しています LoggerAdapter のホストについて何も表示されません。何が間違っていますか?
UPD2:
ホストを syslog-ng に送信する方法が見つかりませんでした。チェーン内の最初のホストを送信することは可能ですが、Python Logging を介して送信する方法が実際には見つかりません。
とにかく、syslog-ng でパーサーを作成しました: CSV Parser
次に、; で区切られた syslog-ng にログを送信します。