タグ

ブックマーク / hakobera.hatenablog.com (6)

  • Heroku アプリのログを fluentd で ElasticSearch に突っ込んで Kibana で監視する方法 - hakobera's blog

    目的 Kibana で Heroku アプリのログを可視化したい。ただし、レスポンスタイムとかは New Relic でも見れるので、ここではアプリが出力したらログを可視化する方法を紹介する。 また、今回、アプリからの出力を可能な限りに簡単にするために、アプリからは Heroku の STDOUT に出力するだけで、ログを Kibana サーバに送信できるようにしてみた。 具体的にはこう。(Ruby の場合) 出力の形式は、Treasure Data addon の方法 を真似ている。 puts "@[tag.name] #{{'uid'=>123}.to_json}" これで、tag.name が fluentd の tag 名に、それに続く JSON 文字列が送信するデータとして処理される。 環境 Amazon EC2 上に Kibana サーバを構築 OS は Ubuntu 13.1

    Heroku アプリのログを fluentd で ElasticSearch に突っ込んで Kibana で監視する方法 - hakobera's blog
  • Github Issues を利用したリリースマネージャのお仕事 - hakobera's blog

    最近、Quipper という会社で「リリースマネージャ」という名前のお仕事をしています。開発以外の仕事は久しぶりだったので大変でしたが、最終的にそれなり上手く行った方法を振り返りとしてブログに書いておくことにします。 経緯 自分のチームとは別のチームが開発しているサービスのリリースが迫っている中、それまで開発者の1人がリリース管理っぽいことをやっていたのですが、さすがに開発と管理の二足のわらじが辛くなってきたとのことで、急遽サポート的に自分が「リリースマネージャ」という役割りで参加することになりました。 コンセプト コンセプトは「使用するツールを増やさない」です。 管理のために新しいツールを増やすと、その使い方を教えるなど新たなタスクが発生してしまいます。タスクを減らすためにタスクが増えるなんてナンセンスです。 ということでQuipper では普段の開発に Github を利用しているので

    Github Issues を利用したリリースマネージャのお仕事 - hakobera's blog
  • 「Node.jsは静的コンテンツには向いていない」のか? - hakobera's blog

    この記事は東京Node学園祭2012 アドベントカレンダーの8日目の記事です。 この記事を書こうと思った理由 Node.jsに関するWeb上の記事を読んでいると、「Node.jsは静的コンテンツに弱い」とだけ書いてある記事をよく見かけます。有名なところだと、LinkedInのNode.jsのパフォーマンスに関する10個のTipsの3番目のTipsに"Don't use Node.js for static assets"とばっちり書いてあります。 確かにCDNやNginxに比べれば、Node.jsは静的コンテンツの扱いが遅いとは思います。しかし、それは LinkedIn くらいの超大規模なトラフィックがある場合には問題になるとは思いますが、小〜中規模なサイトでもNginxは必須なほど遅いのでしょうか?512MBしかメモリのないVPSNginxとNode.jsを入れてやりくりすることがホン

    「Node.jsは静的コンテンツには向いていない」のか? - hakobera's blog
  • 僕の考えた最強の Node.js Document Viewer - hakobera's blog

    自分がNode.js でプログラミングをする際に、必ず参考にするページがあります。それは Node.js の公式ドキュメントです。 Node.js v0.8.12 Manual & Documentation バージョンアップにも追随して、最新の情報が得られるので、書いている人には頭が上がりません。情報量も十分です。(たまに空っぽのページとかありますが) ただ、このドキュメントを見たことある人ならわかると思いますが、すごく見難いのです。より具体的にはナビゲーションが良くないのと、検索がない、という2つの難点を抱えています。 というわけで、この問題を解決する Document Viewer を作りました。 名付けて 「YAND」=「Yet Another Node.js Document Viewer」です。 Yet Another Node.js Document Viewer [追記]

    僕の考えた最強の Node.js Document Viewer - hakobera's blog
  • mocha と Jenkins で Node.js の CI 環境を構築する - hakobera's blog

    最近、mocha をつかってテストを書くのが楽しくなってきました。でも、テストの数が増えてくるとローカルでの実行だけでなく、CI 環境が欲しくなりますよね。github にあげられるようなプロジェクトだったら、Travis CI も良いですが、実際に仕事で使うとなると、既存の Jenkins と組み合わせてやる必要ができてきたので、実際にやってみました。 基的な手順は以下の通りです。 mocha でテスト結果を TAP 形式でファイルに出力する 出力したファイルを Jenkins の TAP Plugin に読み込ませる 簡単ですね。 実際にやってみた というわけで、以下のような最小構成で試してみます。 myapp |- lib | |- calc.js | |- test | |- calc.test.js | |- package.jsonここには書いていませんが、実際は git

    mocha と Jenkins で Node.js の CI 環境を構築する - hakobera's blog
  • Goole App Engine SDK 1.4.0 の新機能 - hakobera's blog

    原文: Prerelease SDK 1.4.0 is out! - Google App Engine | Google Groups App Engine SDK 1.4.0 の prerelease 版が出て、搭載される機能について紹介されていました。 一言でいうと「これは熱い!」 レイテンシ改善のため、インスタンスが常時起動できるようになった! Channel API が使えるようになった! 個人的には上記の2つが嬉しい。 勢いで原文の Java 版の新機能のとこだけ訳してみました。細かいところは誤訳の可能性もあるので、念のため原文も載せておきます。 常時起動オプションを設定することで、3インスタンスを常時起動しておくことができます。これにより、アプリケーションのレイテンシ(起動時間)を大幅に短縮することができます。(The Always On feature allows app

    Goole App Engine SDK 1.4.0 の新機能 - hakobera's blog
  • 1