問題タブ [syslog4j]
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.
java - Mac で Syslog4J (syslog) サーバーが起動しない
Windowsで動作するカスタムsyslogサーバー(Syslog4Jを使用)の次のコードがあります。
着信イベントをリッスンし、イベントを受信するたびにハンドラー (メソッド) を呼び出します。
同じコードを Mac で実行すると、それが表示されます。ループを使用してイベントを待機しても、イベントはキャプチャされません。
ハンドラの initialize() メソッドでさえ、Mac では呼び出されません。
logging - Java 例外マネージャー - エンタープライズ レベル
車輪の再発明に着手する前に、Enterprise Java アプリケーション用の産業用強度の FOSS ロガーを探しています...
例外をログに記録する (SAPesque を考えてください) が、log4J タイプのものを超える大規模なアプリケーションを見てきました。これらの機能は、私が探しているものの一部です。
- 追跡または報告できる参照番号をエンドユーザーに提供する
- 例外を一元的にログに記録します (いいえ、syslog とは異なり、むしろデータベースに記録します)
- チケット ヘルプ デスクでログを作成する (Jira など)
- 自動統計(これらのセクション/名前空間は面倒です)
- 自動キャラクタリゼーション (これらの例外はそれらの例外に似ています)
- 自動ガイダンス - この例外は 10 回発生しており、この Jira で追跡されており、このリリースで修正される予定です...
- オペレータ コンソールまたは API (REST が良い..) ユーザーが見ることができない詳細を見る
- 開発者コンソールまたは API - さらに詳細を表示 (オペレータから隠されているデータなど)
そして、あなたが考えることができる他のもの:)
parsing - syslog4j syslog サーバーで syslog メッセージを解析する方法
syslog4J で実装された syslog サーバーに送信される syslog メッセージを解析したいと考えています。syslog4Jでそれを行うことは可能ですか?
私がやりたいことは、ホスト名、タイムスタンプ、メッセージ、重大度レベルなどの syslog メッセージのさまざまなフィールドを分離し、将来の分析のために統一された syslog パターンを作成できるようにすることです。
この王様の機能は、rsyslog または syslogNG で利用できます。
java - %HOSTNAME% 値は rsyslog で「不明」です
要旨
rsyslog は %HOSTNAME% の値をどこで取得しますか?
Tomcat が提供するアプリケーションの %HOSTNAME% は正しいのに、同じ構成のコンソール アプリケーションのホスト名が「不明」なのはなぜですか?
EC2 インスタンスで rsyslog を使用しており、ログを loggly に送信しようとしています。ログ メッセージの場合tail -f
、日付、ホスト名、タグ、メッセージを含むデフォルトの形式でログを確認できます。
使用するlogger "message"
と、コンソールとログの両方に正しいログ エントリが表示されます。ただし、Java コンソール アプリケーションがイベントをログに記録すると、ホスト名はコンソールとログの両方で「不明」になります。
奇妙なことに、rsyslog、syslog4j、および log4j の同じ構成が、Tomcat によってホストされている Web アプリケーションからのものである場合、正しいログ エントリになります。
rsyslog は %HOSTNAME% の値をどこで取得しますか? Tomcat が提供するアプリケーションの %HOSTNAME% は正しいのに、同じ構成のコンソール アプリケーションのホスト名が「不明」なのはなぜですか?
syslog - 複数のクライアントでの syslog ポート
UDP 514 ポートを使用するローカルホスト (Linux OS) で syslog サーバーを構成しています。
異なるホストが同じポートにアクセスしようとしていますが、サーバーは一度に 1 つのクライアントのみがポートにアクセスできるようにしています。
異なるクライアントから同時に同じポートにアクセスする機会や方法はありますか??
syslog - syslog4j が特定のメッセージを無視するのはなぜですか?
syslog4j (2011 年からの現在のバージョン) を使用して、syslog メッセージを受信します。明らかに、それらのいくつかは処理されず、wireshark を使用して、元のサーバーを離れ、syslog4j プログラムを実行するサーバーに到着することがわかります。
残念ながら、これは送信者がサポートする唯一の構成であるため、udp での syslog の使用に制限されています。しかし、wireshark のパケットを見ると、これが問題の原因ではないようです。
私のプログラムは次のようになります。
私の(省略された)バージョンの Handler は次のように書かれています。
アプリケーションに高い負荷はありませんが (5 分間で約 100 件のメッセージ)、メッセージの 10 ~ 20% が失われます。
java - rsyslog の再起動時に syslog4j がロギングを停止する
rsyslog
デーモンの再起動後、 syslog4j 0.9.46は Java プロセスを再起動しないと syslog に正常に書き込むことができなくなります。例外はスローされず、ロギングがまだ機能しているかどうかを API 経由で確認する方法もありません。syslog4j をrsyslog
再起動から回復させる方法、または接続を手動で再起動できるように少なくとも例外をスローする方法はありますか?
サンプルコード:
上記のコードは、が再起動されるまで、あなたが思うように機能しますrsyslog
。その時点で、syslog にメッセージは表示されなくなりますが、それ以外はすべて機能しているように見えます。
java - LOG4J 1.x で syslog を使用するには?
LOG4J を設定したい。大きいアプリなので2.xにバージョンアップできません。LOG4J バージョン 1.x の実際のドキュメントはオフラインです。
アペンダーの実際の構成は次のとおりです。
私はそれをテストしました: netstat -a -b > test.txt
しかし、ポート514で何かが見つかりませんでした。
誰かが私を助けてくれますか (彼は LOG4J 1.x の経験があるため)、または誰かに LOG4J 1.x のドキュメントのコピーを持っていますか?
java - SyslogServer が UDP メッセージを受信しない
現在、syslog UDP メッセージの処理に Syslog4j 0.9.46 を使用しています。コマンドラインから送信するために使用していますが、どうにかして受信する必要があります。これを行うには、次のコードを使用しています。
どうやらこれでは十分ではないか、何か間違ったことをしています。jar で実行される syslog メッセージ コマンドを送信するには:
次のコードを実行すると受信できるため、正しく送信されていることがわかります。
Syslog4j 0.9.46 ドキュメントで次の用語を確認しました: SyslogServerIF
、AbstractSyslogServer
およびUDPNetSyslogServer
. それらのすべてには、戻り値、パラメーター、およびメソッドがスローするものだけが含まれており、説明は一言もありませんでした。http://www.syslog4j.org/でFAQ と提供されている例も検索しましたが、サーバーに関するものはありませんでした。
だから私の質問はです。からメイン メソッドを呼び出さずに UDP syslog サーバーを実行するにはどうすればよいSyslogServer
ですか? カスタム ハンドラは使用しません。