Cybozu Meetup #6 大規模サービスを支える名脇役たちでの発表 https://cybozu.connpass.com/event/61329/
gihyo.jpさんでgroongaの隔週連載が最終回を迎えました。groongaの最新情報と今後に興味があれば一読をおすすめします。該当記事は「最終回 groongaの今と未来」 です。 第1回から第10回までの過去記事については、隔週連載groongaのページを参照してください。 今年も11/29に全文検索エンジンgroongaを囲む夕べ 4を開催することになりました。groongaのいろんな話を聞きたい人にはおすすめです。参加登録はお早めに! 発表者も募集しています。 はじめに オープンソースのカラムストア機能付き全文検索エンジンgroongaを公開しています。この記事を書いた時の最新のバージョンは2013年9月29日にリリースした3.0.8です。 今回は、ログにまつわる便利ツールについて紹介します。 groongaと関連プロダクト 全文検索エンジンgroongaにはいくつか関連プロ
Linuxでcoreutils が利用可能なら、timeout コマンドを使いましょう。なお、Mac であれば brew install coreutils して gtimeout が使えます。 timeout Usage: timeout [OPTION] NUMBER[SUFFIX] COMMAND [ARG]... or: timeout [OPTION] man には以下のように書かれています。デフォルトの挙動が使いやすそうです。 コマンドがタイムアウトし、--preserve-status が指定されていない場合、 終了ステータスは 124 になります。それ以外の場合、COMMAND の終了ステータスが 終了ステータスになります。シグナルが指定されていない場合、タイムアウト時には TERM シグナルが送られます。この TERM シグナルにより、TERM シグナルをブロック もしく
AWS アカウントを複数人で使ってシステムを作っていく時に、 セキュリティの面からやるべきことについて。 主に Web アプリケーションを想定した内容ですが、特に書いてあることは特殊ではないと思います。 各所の Blog にも記事書かれてますが思っていることをつらつらと書いてみます。 なんか変なこと言ってたらご指摘ください。 参考: AWSのセキュリティが気になるなら読んでおくべきAWSセキュリティのベストプラクティス - yoshidashingo はじめに (AWS アカウントと IAM ユーザ) 前提というか用語の話。 AWS アカウント アカウント作成時のメールアドレス、パスワードでログインして使うユーザ IAM ユーザ AWS アカウントから発行できる、ユーザ名とパスワードでログインして使うユーザ AWS アカウント周り AWS アカウント (ルートユーザ) で作業できないように
今回は、catやtailと組み合わせてログをカラフルに色分けし見やすくする『ccze tool』を紹介する。 1.インストール まずはインストール。 以下のコマンドを実行する。 sudo yum install ccze --enablerepo=epel (CentOSの場合) sudo apt-get install ccze (Debian/Ubuntuの場合) 2.コマンドの実行 さて、それでは実際にコマンドを実行してみよう。 tailコマンドで、「/var/log/messages」を確認する。 tail /var/log/messages | ccze -A 上半分はcczeを利用していない状態。 下半分でcczeを用いている。 うーむ、確かに見やすい… むろん、「tail -F」でも閲覧可能だ。 tail -F /var/log/messages | ccze -A ちなみ
複雑なアプリケーションではロギング、 トレーシング 、メトリクスといったサポートの機能により、関数にすぐ負荷がかかってしまいます。これらのコードブロックはあらゆるコードベース上でそれぞれ少し変形して繰り返し使用されるのですが、これを 横断的関心事(cross-cutting concerns) と言います。 アスペクト指向プログラミング (AOP)は、アスペクトと呼ばれるモジュール内にコードブロックを引き入れて、 関心の分離 (separation of concerns)を手助けします。 AOPの実装 Phoneクラス ^(1) 不自然な例だというのは承知の上で、 dial メソッド1つを使って簡単なPhoneクラスを構築してみました。 function Phone() {}; Phone.prototype.dial = function (friend) { var start =
「ログを集めて保存する」と言うのは簡単だけど,ログ収集の構成にはいくつか方法があり,勉強会などでちょくちょく聞かれるので,いくつかのパターンについて書く. 「俺はもうバリバリログ収集やってるぜ!」という人は多分すでに知っていることが書かれているので,タブを閉じて良い. ここではログコレクタにFluentdを想定しているが,他のログ収集プロダクトにも適用出来るはず. ただ,Fluentdはタグベースのルーティングを持ち,単体でもキューのように動作させることが可能で,既存のものより複雑な問題を解決しようとしているので,少し工夫が必要かもしれない. Fluentdそのものについては公式ドキュメントや,Fluentdとはどのようなソフトウェアなのかを参考に. クライアントから直接保存する いきなりFluentdを使わないパターン.JavaScript SDKを提供している解析サービスやモバイル端末
mysqldの --general-log-file オプションを /dev/stdout に設定してコンテナを起動しておく。 $ sudo docker run -p 3306:3306 -d --name mysql -e MYSQL_ROOT_PASSWORD="mypass" mysql /entrypoint.sh mysqld --datadir=/var/lib/mysql --user=root --general-log=true --general-log-file=/dev/stdout こうすることで、docker logs -f mysql で標準出力にてクエリーログを確認できるようになる。 ホストとコンテナでログファイルをVOLUMEで共有しなくていいのがこの方法のいいところ。また、ログファイルを確認するためにコンテナに入る必要もない。Dockerfileやmy
何がしたいか ゲームループがループごとにイベントを複数生成するのだが、それを時系列に沿って順番に捌きたい でもオブザーバでグローバルなイベント投げまくるとすぐクソコード化する どうにかしてピュアなモデルからビューとの待ち合わせ(オブザーバー含む)を切り離したい。なんでもしますから! というわけでちゃんと設計練って書いてみたら結構いいんじゃねとなったので、解説書く。 設計の概要 EventSource#createEvents() は Eventの配列を生成する 実際にはここがユーザーが記述する部分になる EventRunner はループ毎にEventSource#createEvents()を呼び、上から順に処理する event.eventType毎に処理の仕方を記述する この例ではEvent間の時間を100msとなるよ]うにしてるが、実際なんでもいい。 コード CoffeeScriptで
ども、大瀧です。 本日開催されているAWS Summit New YorkでCloudWatchの新機能、CloudWatch Logsが発表されました。 バックでKinesisが動いているらしく、スケーラブルなログアグリゲーションサービスとして期待できそうです。ひとまず、どんなものか試してみたのでレポートします。 1. IAMユーザー/IAMロールの準備 動作する仕組みは一般的なログアグリゲーションサービスと変わらず、ログ収集対象のマシンにエージェントをインストールし、アグリゲータにログを順次送信する形態です。エンドポイントはCloudWatchのAPIなので、他のAWS APIと同様にCloudWatch Logsに必要な以下の権限を付与したIAMユーザー、もしくはIAMロールを準備します。 { "Version": "2012-10-17", "Statement": [ { "Ef
はじめに サーバを運用したり環境を構築したりしていて「あれ。あのプロセスで吐いてるログどこだっけ・・」など困るときがあります。 そんなときに頼りになるかもしれないコマンドを 3つご紹介します。 @madeth 師匠に教えていただきました。 1. proc でプロセスが使っているファイルを見る 困ったこと プロセスの吐くログのパスがどうしても分からない・・。 解決法 (編集 2014/09/10) 知りたいプロセスの ID を調べます。 $ ps aux | grep unicorn deploy 3335 xxx xxx xxx xxx X XX 15:14 0:07 unicorn master -c /var/www/myproject/unicorn/staging.rb -E staging -D プロセスID (この場合は 3335) をもとに root 権限でファイルディスクリ
Javaのロギングライブラリですが、 java.util.logging(JUL) Log4j Commons Logging(+Log4j) SLF4J+Logback と種々あり、最近ではSLF4J+Logbackが主流な気がするのですが、自分の周りでは長らくLog4j、またはCommons Loggin越しにLog4jのパターンが多かったです。というか、今もですが。 Log4jの上に、自作のロギングライブラリを作ることになることも、多々…。 まあ、そんな感じで昨今のJavaのロギング事情にだいぶ置いていかれているのですが、ここでちょっとLog4jの後継であるLog4j2を試してみたくなりまして。 Apache Log4j2 http://logging.apache.org/log4j/2.x/ なんでも、パフォーマンスがかなり良くて有名?らしいのですが。 The Logging O
記事投稿者:山下 晴規 記事公開日:2014/03/17 最終更新日: (この記事は約1年以上経過しています。) apacheアクセスログなどの時系列ログを、fluentd(td-agent)からMongoDB(ドキュメント指向データベース)とElasticSearch(検索エンジン)に取り込み、確認する方法を記載しています。 apache稼働サーバ(192.168.1.10)と、MongoDBとElasticSearch稼働サーバ(192.168.1.20)は、別サーバとしています。 1.apache稼働サーバの td-agent.conf apache稼働サーバ(192.168.1.10)におけるtd-agent.conf 設定を記載します。 source ディレクティブ設定(入力元)は以下になります。 <source> type tail path /var/log/httpd/ac
3. INDEX -fluentdの紹介 – こんなことができるようになります – アーキテクチャ簡単紹介 -こんなことをやってみました – apacheのログを集約して、elasticsearchにいれて、kibanaでみてみる – apacheのログをURL毎にグルーピングしてレスポンスタイムを GrowthForecastでみてみる -現状をこうしよう! – apacheログの集約、集計、活用 – MySQLの更新履歴をfluentdでSolrにいれる -可視化について – 事前に考え抜くこと – 目的の明確化、KGIとKPI – 設計サンプル 4. INDEX -fluentdの紹介 – こんなことができるようになります – アーキテクチャ簡単紹介 -こんなことをやってみました – apacheのログを集約して、elasticsearchにいれて、kibanaでみてみる – apa
こんばんは、south37です。 最近はEffective JavaScriptを読んでるのですが、知らなかった事がポロポロ出てくるので、とても勉強になっています。これからはちょいちょい、そーやって勉強した事をまとめていけたらいいなと思います。 って事で、今日は関数定義の話をしたいと思います。 関数宣言と関数式 JavaScriptにおける関数定義には、大きく分けて3つの方法があります。 function文を使う方法(関数宣言) function演算子を使う方法(関数式) Functionコンストラクタを使う方法 1と2が一般的によく使われる方法ですね。 // 方法1 function multi(x, y) { return x * y; } // 方法2 var multi = function(x, y) { return x * y; }; // これも方法2 var multi
fluentdの効果的な活用例と安定運用のポイント:今さら聞けないfluentd~クラウド時代のログ管理入門(3)(1/3 ページ) 効率良く、意味のあるログ管理を実現するツールとして注目されている「fluentd」。最終回では、実際の利用シーンを想定し、より効果的なfluentdの利用法を紹介します。 第1回、第2回でfluentdを使って基本的なログ管理が実現できるようになったのではないでしょうか。fluentdはプラグインの組み合わせにより更に効果を発揮します。最終回では、実際の利用シーンを想定し、より効果的な利用法を紹介します。 fluentdの具体的な活用例 実際の利用シーンを想定した2つのfluentdの活用例を紹介します。 大量のログを分析し、「意味のある情報」として管理する タグデータを効果的に活用し、ログデータのフィルタリング管理を行う 1.大量のログを分析し、「意味のあ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く