コンニチハ、千葉です。 AutoScalingに組み込んでいるサーバのログ監視をしたいことって、よくあると思います。 今回は、AutoScaling配下のサーバにfluentdを入れてログ収集サーバにて一括で集めて、ログ監視をする場合に気をつけたことをまとめておきます。 ログサーバ側のtd-agent.conf ログサーバではこんな感じで、td-agent.confを設定しました。 <source> type forward port 24224 bind 0.0.0.0 </source> <match dev.web.log> type copy <store> type file buffer_path /var/log/td-agent/buffer/local_dev.web.log.buf symlink_path /var/log/td-agent/logs_current/
はじめに Docker 1.8 から Logging driver に Fluentd が加わるということで心待ちにしていたら、Docker 1.8-rc3 がリリースされていたので待ちきれず試してみた。 ※本記事の内容は Docker 1.8-rc3 上で試した内容となるので、リリース版と異なる内容があるかもしれないのでご容赦下さいませ。 追記(2015/08/12 PM 5:15) 1.8 が正式にリリースされていた github.com アップデート or インストール(Ubuntu) d$ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=14.04 DISTRIB_CODENAME=trusty DISTRIB_DESCRIPTION="Ubuntu 14.04.1 LTS" $ $ curl -sSL https://
railsのアクセスログは、とても機械的に解析しづらく、運用するにはあまりよろしくない。そこで、Rack::CommonLoggerを使ってアクセスログを別途とったりしようとしていたのですが、(一般的にはNew Rericとかをつかうのが普通なんでしょうか?) ログのローテーションとか考え出すと、あまり良い方法が思いつかない、という関係で、 syslogへ投げる fluentdへ投げる というアイディアを思いついたのですが、syslogだと機械解析しづらいフォーマットになってしまったりあまり詳しい人が意外といなかったりする関係で、流行っているfluentdへ投げちゃえと思いRack::CommonLogger::Fluentというrackのミドルウェアを書いてみた次第。 https://github.com/walf443/rack-common_logger-fluent まだ作り始めで
以前にNetflowについて書いたのですが、sflowもelastcsearchに入れたいなと思って色々調べてみました。ちなみに前回からkibanaのバージョンをあげましてkibana 4はこんな画面になってます。検証用のデータですが気持ち的にIPアドレスは隠しました。 ホワイトを基調のデザインに一新されており個人的には好感が持てるデザインになっています。機能的にはグラフオプションが強化されて実現できることが多くなっています。 komeiy.hatenablog.com kibana 4になり、対応するElastic Searchのバージョンも1.4以降に変更になっているため注意が必要です 調査フェーズ logstashを使ってElastic Searchへ入れるパターン まず、調べてたところlogstashで以下のような方法があるようなので少し調査。 https://github.com
Treasure Dataのサービスはクラウド上でどう構築されているのか(後編)~July Tech Festa 2013 Treasure Dataといえば、日本人がシリコンバレーで創業したベンチャーとして知られている企業。そのシニアソフトウェアエンジニア中川真宏氏が、7月14日に行われたJuly Tech Festa 2013の基調講演で、同社がクラウド上で構築したサービスについてそのアーキテクチャを中心に解説を行っています。 この記事は「Treasure Dataのサービスはクラウド上でどう構築されているのか(前編)~Japan Tech Festa 2013」の続きです。 データを解析する「Plazma」の仕組み データを解析するところでは「Plazma」と呼ぶ、Hadoopのエコシステムとカラムストアなどを組み合わせたものを用いています。
Treasure Dataのサービスはクラウド上でどう構築されているのか(前編)~July Tech Festa 2013 Treasure Dataといえば、日本人がシリコンバレーで創業したベンチャーとして知られている企業。そのシニアソフトウェアエンジニア中川真宏氏が、7月14日に行われたJuly Tech Festa 2013の基調講演で、同社がクラウド上で構築したサービスについてそのアーキテクチャを中心に解説を行っています。 注目されているクラウドサービスがどのような仕組みになっており、それはどのような考え方で作られているのか。クラウドでシステム構築を考えている多くのエンジニアの参考になるはずです。講演の内容をダイジェストで紹介します。 Treasure Dataのクラウド戦略 Treasure Data, Inc。シニアソフトウェアエンジニア 中川真宏氏。 スタートアップなこともあ
「ログを集めて保存する」と言うのは簡単だけど,ログ収集の構成にはいくつか方法があり,勉強会などでちょくちょく聞かれるので,いくつかのパターンについて書く. 「俺はもうバリバリログ収集やってるぜ!」という人は多分すでに知っていることが書かれているので,タブを閉じて良い. ここではログコレクタにFluentdを想定しているが,他のログ収集プロダクトにも適用出来るはず. ただ,Fluentdはタグベースのルーティングを持ち,単体でもキューのように動作させることが可能で,既存のものより複雑な問題を解決しようとしているので,少し工夫が必要かもしれない. Fluentdそのものについては公式ドキュメントや,Fluentdとはどのようなソフトウェアなのかを参考に. クライアントから直接保存する いきなりFluentdを使わないパターン.JavaScript SDKを提供している解析サービスやモバイル端末
Norikraとは Norikraとはリアルタイム集計プロダクトです。イベントストリームに対してSQLライクな言語で処理を書くことが出来ます。 例えば、ApacheのアクセスログをNorikraに流し込み、1分あたりのアクセス数やレスポンスタイムの最大値をリアルタイムに集計することが出来ます。 Norikraの利用例は作者であるtagomorisさんのブログで紹介があります。 今回は、Norikraを使ってDoS攻撃をブロックする仕組みを作ってみました。 DoS攻撃ブロックの仕組み アクセス元はApacheのアクセスログから取得し、ログの受け渡しにはFluentdを利用しました。 ブロックの手順は以下のようになります。 アクセスログをFluentdのin_tailプラグインで取得。 Fluentdのout_norikraプラグインで、アクセスログをNorikraに流し込み。 Norikra
結構既出な内容ですが、思いっきりハマったので改めて。 ●fluentd→fluentdの通信時にfowardを使おうとしたらエラーになる。 ※追記 VMwareの場合はこっちを参考に。fluentdじゃなくてVMwareの問題というパターンもあり。 http://d.hatena.ne.jp/oranie/20121107/1352298768 中間fluentdから最終的に集約するfluentdにfowardでログを送ろうとすると、始めはちゃんと送れるのに、ちょっとするとログにエラーが出ていた。もちろん集約先の方ではログ受信出来なくなっている。 failed to flush the buffer, retrying. error="no nodes are available" もっと具体的にはこんなの。 で、理由は @oranie 死活監視にUDPのほう使うらしいのでそっちも通さない
クラウドインフラ構築記 現在AWSの構築支援に携わっております。今注視しているのは、GKE、BigQuery、Google Dataflowなどサービスを展開しているGoolge Cloud Platformです。 Datadogで、Fluentd、nginxについても監視が可能。 Nginxのモジュールngx_http_stub_statusが有効である必要があります。組み込まれているかどうかは、nginx -Vで確認が可能です。 /etc/nginx/conf.d/virtual.conf location /nginx_status { stub_status on; access_log off; } datadogの設定ファイルを作成します。.exampleでサンプルがおいてあるので、コピーして作成すればstatus urlを変更すれば完了。 /etc/dd-agent/conf
snmp(Simple Network Management Protocol)とは 様々な機器をネットワークを介して、監視や制御するためのプロトコル。 大きなネットワークを構築している会社では、各サーバーを監視するために導入しているところは多いと思います。 基本的な構成は、snmpエージェントで各サーバーの負荷を計測し、snmpマネージャーが各サーバーの情報を収集するという構成になっています。 snmpをメトッリク収集にも利用 snmpでディスクやネットワークを監視している場合、単純な死活監視のみでなく、snmpから得られる情報から各サーバーの情報を他のサーバーへのリクエストなどと一緒に追えたら便利です。 そこでアクセスログなどのリクエストのログをhdfsやmysqlといったデータソースにいれていれば、そこにsnmpで取得した情報も持たせておくことで、後で障害発生時の状況をいろいろな視点
syslog経由で出力される次のようなログファイルを、Fluentdに取り込む場合に便利なTIPSを紹介します。 /var/log/messages /var/log/secure 今回はこれらのsyslogを一般ユーザでも読み込みは出来るよう、権限を少し緩める設定を紹介したいと思います。 設定例 素の状態でsyslogをtd-agent(fluentd)から取り込もうとすると、権限エラーが発生します。 Fluentdから読み出せるよう、rsyslog(syslog)の設定を変更していきます。 # サンプルのためsourceブロックのみ記述します $ cat /etc/td-agent/td-agent.conf <source> type tail path /var/log/messages format syslog tag td.syslog.messages pos_file /
Datadog というシステム監視 SaaS のネタです。 先週の木曜に「Datadog でカスタムメトリクス送るの面倒じゃない?どうやってるの?」とある人に質問されたので、 自分が知ってる Dogstatsd を使う方法をシェアします。 これはあるサービスの Nginx のアクセスログとエラーログを、 Fluentd 経由で Datadog にカスタムメトリクスとして送って可視化した例になっていて、 それぞれ、 左上: ステータスコード別の集計グラフ 右上: 今日・昨日・一週間前のレスポンスタイムグラフ 左下: Fluentd の タグ毎の流量 右下: Fluentd の ホスト毎の流量 といったグラフになっています。このポストではこんなグラフを作る方法を説明します。 Dogstatsd とは? 唐突に Dogstatsd というものが出てきますが、カスタムメトリクスを送る場合はコイツを
ども、かっぱです。 はじめに 前回の記事の続きで datadog の event に通知するプラグインをとりあえずリリースした。ちなみに、Output と Input プラグインを同梱してみた。 github.com リリースと書くとカッコイイ感じだけど rake release しただけですんません。 使い方 fluentd.conf の設定例 <source> type forward port 24224 bind 0.0.0.0 </source> <match dd.event.warn> type datadog_event api_key xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx alert_type warning tags event,warn </match> <match dd.event.err> type datadog_event api
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く