Help us understand the problem. What is going on with this article?
Dockerではコンテナ内で実行されたプロセスの出力をログとして記録しておく機能が用意されている。このログ出力機構では、さまざまなログ記録システムにログを転送することが可能であり、複数の異なるホストで稼動しているコンテナのログを1つのマシンに集約する、といったこともできる。今回はこのログ機能について紹介する。 DockerのLogging Driver機構 Dockerコンテナでは、コンテナ作成後にコンテナ内のファイルシステムに書き込まれたデータはコンテナの削除時に一緒に破棄されてしまう。そのため、各種ログやエラーメッセージ出力などの保存しておきたい情報はコンテナ外に出力して保存しておく必要がある。Dockerではこれを支援する機能の1つとして、ログを外部のログ記録ソフトウェアに転送する機構が用意されている。これを利用することで、多数のコンテナが稼動するような環境や、複数のマシンを組み合わ
概要 このドキュメントは、効率的かつ安定した、システム開発/運用をするためのログ設計指針です。 的確かつ無駄のない、ログ出力を目指します。 ログレベル ログの緊急度や用途により、以下のようにログレベルを設定する。 Log4j のログレベルを踏襲しているため、運用の状況によっては Critical などのレベルを適宜追加すると良い。 PHP における PSR-3 では、さらに細分化され emergency, alert, critical, error, warning, notice, info, debug となっている。 「出力先」「運用時の対応」は、各プロジェクトのポリシーに準じてください。 レベル 概要 説明 出力先 運用時の対応
今日は、Dockerのログについて調べたいと思います。 運用するにも、開発で利用するにもログを出力するということは非常に重要です。 私は運用で使用するプログラムでは、よくsyslogに対して出力をすることが多いです。 また、開発中にはprintなどの標準出力、エラー出力を利用することが多いです。 Dockerではどのようになっているのでしょうか。 Dockerのログ出力 デフォルトは? Dockerのデフォルトの出力は、JSON形式で保存されています。 コンテナ起動 まず、コンテナを起動してコマンドを実行してみましょう。 # docker run -it -v /dev/log:/dev/log --name test01 centos:6 /bin/bash [root@ca4bd7b2ad6a /]# ps -ef UID PID PPID C STIME TTY TIME CMD r
どのように何をロギングするかを知ることは、ソフトウェアエンジニアが解決すべき最高に難しいことの一つだ。アプリケーションのログを拡張する手助けとなるのがこの「十戒」だ。 新年の私のブログにようこそ。監視とログのモニタリングについてのParisのdevopsメーリングリストでのスレッドに返信を書いた後、長らく心に留めていたブログ記事を思い出した。 このブログ記事は、私のOpsとしての顔をもって、主に開発者向けに書いた。 どのように何をロギングするかを知ることは、ソフトウェアエンジニアが解決すべき最高に難しいことの一つだ。多くの場合、これは予言をするのと同じようなことだからだ。トラブルシューティング中にどんな情報が必要かを知るのはとても難しい。それが、Opsエンジニアの大きな助けとなるよう、あなたのアプリケーションのログを拡張する手助けとなるこの「十戒」を望んだ理由だ。 1. 自分でログを書くべ
Fluentd というソフトウェアがある。日本国内ではそこそこ話題になってきたが、何ができるのか、何に使うと嬉しいのか、何に使えるのか、という点について詳細をよく知らないという人もおそらくまだ多いことでしょう。 なので、簡単にまとめる。 http://fluentd.org/ なお以下の個別項目ごとに書いていくが、その手前にまとめを置いておくので忙しい人はそれだけ読むとよい。インストールや設定については導入部分については日本語の記事はもう多くあるので、触れない。 概要 できること ログの収集 センサデータ等の収集 汎用データ処理プロセッサとして 頻出ユースケース ログの収集 データの集約 簡単なリアルタイム集計 ソフトウェアとしての特徴 コア プラグイン 安定性 性能 開発体制 コミュニティ ぶっちゃけどうなの? まとめ 現時点で、複数の場所に分散したデータや常に増え続けるデータの安全な転
この記事は株式会社ネクスト(Lifull) Advent Calendar 2016の3日目の記事です。 遅くなってしまいましたが、なんとか当日に間に合わせましたいました。 本記事はLinuxのlogrotateコマンドについての説明をするものであり、その他のログに関する話は一切出てきません。ご了承ください。 logrotateとは man logrotateにも書いてあることですがlogrotateは複数のログファイルを圧縮、削除、メールで送信するための機能です。 これにより「ファイルサイズがN以上になったら」とか「日次・週次・月次などで分割」などが容易に可能になります。 logrotate自体はデーモンではなくcrondによって実現されています。 利用する前にcrondが動いていることを確認しましょう。
簡単な解析はワンライナーでやっちゃおう。ということでまずは簡単に最小値と最大値と平均を求めるAwkワンライナーを書きます。 たとえば以下のようなログファイルがあるとする。僕はいま、3列目の数値に対して統計値を出したいのだ。 0 0 147.086 0 10 141.269 0 20 10000 0 30 2805.22 0 40 152.003 0 50 144.762 0 60 144.926 最大値 cat test.log | awk '{if(m<$3) m=$3} END{print m}' { if(m<$3) m=$3 } END { print m } $3ってのが第3番目の列という意味なので、ここを変えれば別のところも参照可能。BEGINの中で初期値を設定する必要があるのかなと思っていたけど、いきなりif(m>$3)を実際にやってみたら大丈夫だった。 最小値 基本的には同
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く