Taming Graylog2-視覚化された機能的なログファイルサーバー

何千ものサービス、デーモン、スクリプトが実行されている十分に大きなサーバー群では、内部の多数のエラーを追跡することは非常に困難です。 メモリ不足、デーモンのスタック、データベースの不適切な動作のいずれか。 一元化されたログストレージサーバーについては何度も説明しましたが、別の便利で強力なツールであるGraylog2についてお話ししたいと思います。





すぐに私は英語の単語が豊富であることをおEnglishびします。私はそれらをどのように翻訳し、意味を失わないかを知りません。



これは何ですか


Graylog2は、syslogで記述された情報を集中的に収集、保存、分析するための無料のオープンソースシステムです。graylog2は、 DevOpsのコンセプトに従って作成されています。



画像



Graylog2は3つのコンポーネントで構成されています。

-graylog2-webui-Rails上のWebインターフェース、

-graylog2-server-Java TCP / UDPログコレクター、

-システム全体の実際のログと設定を全体として保存するためのmongodb。



Graylog2-serverは、通常のsyslogのようなTCP / UDPプロトコルを使用してどこからでもログを受信できるようにし、mongodbはストレージを提供し、railsはすべてを美しく描画します。



画像



長所と際立った機能。


syslog-serverの通常の機能に加えて、次の興味深いことに注意してください。

1.ストリーム内のメッセージの集約。 キーワードにより、複数のホストからのログストリームを組み合わせて、アラートをストリームに送信し、これらのアラートを誰かにメールで送信することができます。



画像



2.ホストのグループへの集約。 異なるホストからのストリームを1つのグループに結合できます。



3.正規表現、時間、重要度、施設ごとの配列全体からのサンプル。 いつでも何でも見つけることができます。



画像



4.ログのブラックリスト。 正規表現により、ログをフィルタリングできます。 私たちが禁止しているものはすべてデータベースには入りません。

5.ログの自動回転。 古いレコードを削除することを心配する必要はありません。mongodb自体は、 上限付きコレクションメカニズムを使用してすべての作業を行います。

6. GELFを使用する機能-グレイログ拡張ログ形式。これにより、syslogメッセージの標準長が1024バイトに拡張されます。 GELFを使用すると、システムメッセージだけでなくコードのロジックも監視し、アプリケーションから直接詳細なメッセージを送信できます。

7.プロジェクトは無料(GPLv3)で、積極的に開発中です。



パフォーマンス。


束は全体として安定して非常にスマートに機能します。 私自身は、システムが1秒あたり最大17,000のメッセージを処理する方法を見ました。 同時に、mongodbスケーリングメカニズムは関与せず、すべてのコンポーネントが1つの小さな仮想マシンでスピンします。



短所


残念ながら、欠点もあります。

1. mongodbは最も重要なマイナスです。ファンを許してください。 調理方法が分からないかもしれません それは、たまたますべての記憶を使い果たしてしまいます。 バージョンが2.0より大きい場合は、通常の選択は機能しません。

2. Javaもかなりのリソースを消費します。

3.定期的な選択、時間の選択、およびページめくりが常に正しく機能するとは限りません。 パターンを見るのは非常に難しく、時には機能しますが、時には機能しません。 Webuiを完了する必要があります。

4.自動ローテーションは良いことですが、古いメッセージはどこにも保存されず、死にます。



graylog2に重要なデータを結び付け始めませんでした。 これはすべて生です。 したがって、近接ポートでは、ログは古き良きsyslog-ngによっても受信され、そのようなデータをディスクに追加します。 しかし、ログの一般的な流れの監視と分析のために-ツールは非常に正気です。

インストールは簡単で、バイナリをダウンロードし、レール用の環境を準備し、最後のモングを入れて、10分後にすべてが機能します。 initスクリプトはまだ作成していませんが、必ずこれを実行します。



参照:

- プロジェクトページ

-GELFAMQP

-DevOps

-mongodb



UPD:

まあ、彼が記事を書いている間に、 開発者は次のバージョン0.9.6で何が起こるかを発表しました。ベータのリリースは数日しかありませんでした。



-mongodbは間違いであり、プロジェクトは情報のリポジトリとしてElasticSearchに切り替えます。 率直に言って、私はまだ知りません))約束は単に生産性の大幅な向上です。

-分析のロジックの変更、グラフ作成の高速化、これによるパフォーマンスの向上、

-再設計された分析コンソール、

-フィルタリング、ファイル名、文字列などの新しいルール、

-この機能は冗長であり、既にストリームに存在することを考慮して、ホストグループは削除されました。

-バグ修正、改善。



一般的に、著者は、生産性、安定性、利便性をさらに向上させることを約束します。これにより、たとえば、非常に満足しています。 正直に言うと、この記事を書いてから初めて、このツールの範囲が非常に広いことがわかりました。



All Articles