joppot

コピペで絶対動く。説明を妥協しない

サーバ

td-agent-uiのセットアップとfluent-catで動作確認

投稿日:2017年3月6日 更新日:



概要

みなさんこんにちはcandleです。今回はtd-agent-uiのセットアップと動作確認をしてみたいと思います。
td-agentはfluentdをよりサーバで運用しやすいように、パッケージ化したものです。


前提

td-agentがインストールされている
Centos6.5に構築する場合は以下の記事を参考にしてください。
https://joppot.info/2017/03/03/3418

EC2の場合は、こちらを
https://joppot.info/2017/03/04/3434



td-agent-uiの起動

td-agent-uiはtd-agentを入れた段階ですでにインストールされます。
td-agent-uiの起動コマンドは以下になります。

sudo td-agent-ui start

いくつか警告が出ますが、問題ないでしょう。


td-agent-uiにアクセス

サーバーが起動したら、td-agent-uiにアクセスします。
自分のIPアドレス+9292にアクセスします。

vagrantの場合はVagrantfileに書いたIPアドレス。

EC2の場合は設定されている公開IPアドレスにアクセスしましょう。

初期設定で、 アカウント名は「admin」パスワードは「changeme」になります。

ログインすると、以下の画面が表示されます。



パスワードを変更する

最初にパスワードを変更しておきましょう。

もしも、どこからでもアクセスできるようにしている場合は初期設定のパスワードでは危険です。

左のメニューの「パスワード管理」をクリックします。

現在のパスワードに「changeme」を入れて、パスワードには新しいパスワードを設定します。

td-agentのセットアップ

トップ画面に戻り、td-agentをセットアップします。

トップ画面では「fluentdをセットアップ」と「td-agentをセットアップ」があります。

基本的にどちらもfluentdの機能が使えます。私はtd-agentの方をおすすめします。
「td-agentをセットアップ」をクリックします。

設定ファイルなどをtd-agent-uiに追加する画面が出てきます。
ちなみに「作成」ボタンを押す前から、すでに「/etc/td-agent/td-agent.conf」などのファイルは存在します。
「作成」ボタンを押しましょう。

セットアップが終わると、以下のような画面になります。
もしも、ログが表示されない場合は「td-agent」を再起動しましょう。

セットアップが完了しました。

td-agentの収集ログの設定

それでは実際に、td-agentのconfファイルをいじって、ログを収集するための設定をしてみましょう。

td-agentの設定ファイルは以下の場所にあります。

/etc/td-agent/td-agent.conf

もちろん、ターミナルからでも編集できるのですが、
せっかくなので、td-agent-uiから編集してみましょう。

左のメニューの、「設定ファイルの編集」を押しましょう。

右上の「編集」ボタンをクリックします。

セキュリティ面なども考慮して、使わない設定は削除した方が良いです。
設定ファイルの内容を全て削除して、以下を記述します。

<source>
 @type forward
</source>

<match debug.**>
  type stdout
</match>

「更新」ボタンを押して、更新しましょう。

上の設定はこんな感じの意味になります。とはどのログを収集するか、この場合はtype forwardでtd-agentサーバにTCPで飛んできたものについて、という意味です。

はsource type forwardで飛んできた “debug.なんらかの文字列”のタグがついたものはtd-agentの標準出力に表示するという意味です。

設定ファイルの変更は以上です。

fluent-catでデバッグしてみる

それでは実際にtd-agentがdebug.**のタグを取得できるか試してみましょう。

fluent-catコマンドはfluentd(td-agent)にtcpでデータを投げるコマンドです。
コマンドの場所はPATHが通ってないところにあるので、よく使う方はPATHを通しておくと便利でしょう。
今回は直接使います。

/opt/td-agent/embedded/bin/fluent-cat

にコマンドはあります。

以下のコマンドでfluentdに受けてデータを投げれます。

echo '{"I say":"hello"}' | /opt/td-agent/embedded/bin/fluent-cat debug.ok

echoの中身は適当なjsonです。それをパイプしてdebug.okというタグをつけてtd-agentに投げています。

ターミナルには何も表示されませんが、
ブラウザのトップのログをみると、確かに届いているのがわかると思います。

うまくいきましたね。

まとめ

これ以上のあれこれはこちらのサイトがより詳しくまとめているので、そちらを参考にしてださい。
https://cloudpack.media/9789

最後に1つだけ、td-agent-uiはphpmyadminなどと同じように、便利な反面セキュリティ的には狙われやすいので、極力起動せずに、仮に起動してもIPアドレスでアクセス制限するなどをした方が良いでしょう。

この記事では最低限のセットアップとテストをやってみました。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-サーバ
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

centos6.5にtd-agentサーバを構築する

English 日本語 概要 みなさん、こんにちはcandleです。 今回はcentos6.5にtd-agentサーバを構築してみたいと思います。 td-agentとは要はfluentdの事だと思いま …

ruby on railsのckeditor gemをapacheのproductionの本番環境で動かす

概要 みなさんこんにちはcandleです。今回はckeditorを本番環境で動かしてみたいと思います。 とは言っても基本的な記述はdevelopment環境と同じなので、そこまでは前回の記事を参照お願 …

出力fluentdから収集fluentdへforwardを使ってログデータを送信する方法

概要 みなさんこんにちはcandleです。今回はfluentdサーバを2台使って、ログの収集を行ってみたいと思います。サーバ2台はどのような環境でも良いのですが、私が今回説明する環境は1つはMac P …

ec2のメモリ状態をwatchとfreeで監視する

English 日本語 概要 みなさんこんにちはcandleです。今回はec2のメモリをリアルタイムで監視する方法を紹介します。 ec2サーバはt2.microだとメモリが1GBしかなく、その上でco …

ruby on railsで出力されるlog(ログ)のフォーマットを変更する

概要 みなさんこんにちはcandleです。今回はrailsのログに関する記事です。railsは決まった記述でログを出力します。 webアプリケーションを実行中におかしな挙動が合った場合はこのログをもと …


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー