2017-01-04 10 views
0

Kubernetesを見る前に、すべてのログをstdout(12-factor-appに従って)に書き出し、logspoutを使ってLogstashにログを収集しています。別のターゲットへとLogstashで私たちをルーティングログ:アプリケーションログ/アラート/メータリングin Kubernetes

  1. InfluxDB + Grafana:アプリケーションのメトリックを監視する(例えば、どのくらい特定の計算がかかるん)
  2. リーマン:いくつかのパフォーマンスのしきい値を超えた場合は警告する

これらのことをクーベルネットでどのように行うことができますか? Heapsterでは、JVMレベルのグラフ(メモリの使用状況など)やHeapsterがRiemannにイベントを送信して、システムレベルの統計情報(ディスクがいっぱいなど)を知らせることができます。しかし、アプリケーションレベルのものについては、正しいアプローチは何でしょうか?

答えて

0

ヒープスターはコンテナからstdoutを取得する必要があり、データをさまざまなバックエンド(シンク)に送信できます。これは基本的にデータを持つAPI呼び出しです。チェックアウト:https://github.com/kubernetes/heapster/blob/master/docs/sink-configuration.md

私は、stdoutが12faの唯一の方法であることを100%確信していませんが、私たちはログ出力エンジン(graylog)にstdoutをストリームする社内ロギングライブラリを使用します。それはアプリケーション内で発生し、ログメッセージは、イベントとして各行を扱う、完全な 'イベント'対ヒープスターまたは他の標準的なスクレイピングとして保存されます。