日記その他Pingdomでサービスの正常動作とパフォーマンスの監視を10分で設定する!SaaS2014.05.04サービスの監視のためのオープンソースツールといえば、Nagios、Zabbix、最近だとSensuなどがあります。これらは、サーバにインストールして使うので、サーバの設定を書き換える必要があります。慣れれば簡単なんですが、最初は一手間です。いう手間を割きたくない人のために、サービスの監視をするサービスというのがあって、Pingdomはその代表格です。価格はチェック数と機能に応じたプラン制まとめサービスの動作を監視するPingdomPingdomを使えば、サーバ監視も簡単になります。MonitoringPingdomは、サーバにインストールするわけではないので、外から監視します。Nagiosなどは中からの視点で、Pingdomは外からの視点であるのが大きな違いです。分散環境でNagiosが全てのホストを監視している場合、冗長構成の1台が停止した場合アラートが発生します。Pingdomは外から監視しているので、1台が停止してもサービス全体として冗長化されていて動作が維持されていれば問題にしません。逆に、Nagiosは外からのアクセス経路、つまり例えばアメリカからのリクエストを本当に返せているのかなどを確認していません。Pingdomは世界各地にあるサーバから実際にリクエストを送って、正しいレスポンスが返るかを確認しています。登録にはクレジットカードが必須Pingdomには無料のプランがありません。最初に登録する時点で、どのプランを利用するかを選択します。登録時点でクレジットカードが必須になります。障壁が高いですが、無料トライアルの期間があるので、この間は請求をされません。登録が完了すると、そのままダッシュボードへ行くわけではなく、メールで初期パスワードが送られてくるので、これでログインします。やることが多いですが、これでダッシュボードに入れます。動作監視対象の追加ダッシュボードには最初は何も登録されていません。サービスの動作状況の監視をしてみます。URLを指定して、そのURLを一定間隔でリクエストしてもらいます。停止していると判断された場合にアラートを通知してもらうこともできます。いくつかサイトを追加してみました。現在動作しているかと、直近のレスポンスタイムのグラフが表示されています。リリースしたばかりなどで、サービスの死活監視に手が回っていない場合などは、これだけの監視をするだけでも違います。トランザクションチェックPingdomには、もうひとつ強力な機能があります。URLのレスポンスタイムを監視するだけでなく、システムテストのようなことを継続的にできます。設定は先ほどの画面と良く似ているんですが、URLを入力するのではなく、プログラムを入力するようになっています。画面を開くとか、指定要素をクリックすると言った指定が可能です。正しいURLに遷移しているかなどの検証ができます。http://blog.katty.in/category/web-engineering/development-tool/saasURLの監視や、ホストの死活監視で気づけない問題として、「トップページは正しく開けるが、新規登録ができなくなっている」というような問題があります。このトランザクションチェックの機能を使えば、実際に新規登録をする処理を一定の間隔でおこなって、問題の発生を未然に防ぐことができます。こちらも正常に動作しているかと、テストにかかった時間のグラフが表示されます。いうテストは、Seleniumとかでもできるのですが、準備や継続的におこなう設定が面倒です。Pingdomの設定は簡単なので、誰でもこういうテストが継続的におこなえます。パフォーマンス監視これまでに紹介したふたつのテストは、監視サーバからの監視でした。これらに加えて、サイトを訪問したユーザー自身によるパフォーマンスの監視もできます。ユーザーは、使用しているOSや端末も違いますし、ネットワークや地域も違います。いうユーザーごとに違うサイトの動作速度を確認できます。この機能の利用には、サイトにJavaScriptを埋め込む必要があります。時間ごとに、どのくらいの時間でページが表示されているかや、経過時間の分布、何の処理に時間がかかっているか、などを確認できます。価格は、何件のチェックをするかや、機能に応じたプラン制になっています。無料プランはなく、年間契約をすると、最大50%の割引があります。まとめある程度のサービス規模になると、問題が発生する前に未然に検知したいという要求が出てくるので、詳細な監視が必要になります。それ以前の小規模サービスなどでは、Pingdomだけでも監視の役割のほとんどは担えると思います。基本はただのレスポンス監視ですが、単純な割に馬鹿にできません。最低価格が$14.95ですが、自分で監視サーバを維持するコストを考えると、安いかもしれません。中規模以上のサービスでは、Pingdomの監視だけでは不足になってくるので、やはり監視サーバは必要ですが、その場合も世界各地から監視をしてもらえるのは魅力です。Nagiosなどのツールを使って中から監視しつつ、Pingdomを使って外からも監視するという、ハイブリッドの構成をとるのも良さそうです。Analyticsより凄いリアルタイム解析をする。クラッシュ分析ツールBugSenseでアプリのバグの原因を突き止める。関連記事SaaSモバイルサービスの解析と運用を一貫しておこなえるツールUpsightPlayHavenという会社と、Kontagentという会社が、昨年に合併しました。両社のサービスを統合してできたのが、Upsightです。Developers...統計学Rで重回帰分析してWEBサービスの改善方針を立てるよ。Rを使うと重回帰分析も恐ろしく簡単にできます。説明は3分で終わります。カメラSNSを想像てしてみてください。My365でもInstagramでもSnapeeeでも良いです。Buffersなどのシリアライザーのパフォーマンス比較Javaで、オブジェクトをシリアライズするのに、どの仕様と実装が良いのかを調査しています。パフォーマンスを気にしない時は、「JSON一択」だと思っているのですが、パフォーマンスが気になる用途では、変換時間とサイズが気になってしまいます...MySQLMySQLのレプリケーションの設定(とMySQLの自動バックアップ)はじめにMySQLのレプリケーションに挑戦してみたのでその記録です。「レプリカ」を作ること、データベースサーバの複製を作ることです。WEBサイトへのアクセスが増えて1台のデータベースサーバでさばききれなくなった場合...ChefVagrantのsaharaプラグインで仮想環境の設定をロールバック!VagrantとVirtualBoxを使えば、Webアプリケーションの環境構築のフローの検証が簡単になります。失敗したら一度捨てて、簡単にやり直せるからです。最近、家に帰ってから1日1時間くらいずつ使って、趣味のサイトを作っています。APIを作りこもうと思っていて、そのためにHTTPSで通信できる必要がありました。そこで、mod_sslの設定をしたので、その記録です。ほとん...SaaS何時にお知らせを送るのが一番効果的か分かる、プッシュ解析サービスGrowthPush昨日、シロクから新サービスGrowthPushをリリースしました。Analyticsがトップランナーですが、最近はMixpanelなども少し違うアプローチでおもし...Cactiリソース監視、MuninかCactiか。CloudWatchでリソース監視していましたが、より詳細にリソース監視をしようと思いました。簡単にいうと以下の様な目的です。障害が発生する前に、問題になりそうな部分を...NagiosNagiosの起動エラー時に設定ファイルの問題の原因を知る方法Nagiosの設定はどこに問題があるか分かりにくくて困っていたんですが、やっと調べる方法を知りました。設定にエ...Munin全てのEC2インスタンスを自動で監視するEC2Muninを作りました。Servicesは使いたい時に使いたい分だけサーバを起動して使えるのでとても便利です。便利なんですが、インスタンスを起動したり停止したりを繰り返していると、そのつど監視設定を書き換えるのが面倒です。開発ツールSaaSkatty0324経営半分、エンジニアリング半分でやってます。ECSのサービスを複数のロードバランサに追加する2022.01.10Railsプロジェクトにfactory_botの導入2021.12.26ビジネス文書は、読まないで済むほうがいい2021.09.26人気記事mkdirでディレクトリが存在しない時だけディレクトリを作成する。InnoDBの行ロックとテーブルロックの挙動2013.07.122021.02.18Tomcatのログをローテートさせて一定期間で削除する。2014.07.042021.03.07Linuxで共有ライブラリsoを作ったり使ったりする方法。2013.10.242021.02.11UUIDはなぜ、分散環境で好き勝手に生成しても衝突しないのか。RFC4122規格とUUIDの性質。2014.03.282021.02.188年乗ったクロスバイクのボロボロになったパーツをまとめて交換した。2016.11.282021.03.07PHPでnullとfalseと空文字と0は同じ?2011.03.262021.03.07階層化されたデータをHTTPのGETリクエストのパラメータに含める方法。2013.07.27IP制限されているWEBサイトをSSH経由でブラウザに表示する。2014.03.142021.02.11自作ツールテキスト一括変換ツールブラウザ上でリアルタイムにテキストの変換ができるツールです。日記その他ホーム検索トップサイドバーkatty0324経営半分、エンジニアリング半分でやってます。ECSのサービスを複数のロードバランサに追加する2022.01.10Railsプロジェクトにfactory_botの導入2021.12.26ビジネス文書は、読まないで済むほうがいい2021.09.26人気記事mkdirでディレクトリが存在しない時だけディレクトリを作成する。InnoDBの行ロックとテーブルロックの挙動2013.07.122021.02.18Tomcatのログをローテートさせて一定期間で削除する。2014.07.042021.03.07Linuxで共有ライブラリsoを作ったり使ったりする方法。2013.10.242021.02.11UUIDはなぜ、分散環境で好き勝手に生成しても衝突しないのか。RFC4122規格とUUIDの性質。2014.03.282021.02.188年乗ったクロスバイクのボロボロになったパーツをまとめて交換した。2016.11.282021.03.07PHPでnullとfalseと空文字と0は同じ?2011.03.262021.03.07階層化されたデータをHTTPのGETリクエストのパラメータに含める方法。2013.07.27IP制限されているWEBサイトをSSH経由でブラウザに表示する。2014.03.142021.02.11自作ツールテキスト一括変換ツールブラウザ上でリアルタイムにテキストの変換ができるツールです。Handlebars.js2タイトルとURLをコピーしました。