アプリケーション・メトリクス

アプリケーション・メトリクスは問題の特定、調査、診断に役立ちます。応答時間、スループット、エラー、dyno 負荷、メモリなど、アプリの健全性に関わるさまざまな要因を 1 つの時間軸で確認できるので、各要因の相関関係の把握に便利です。アプリケーション関連のメトリクスはすべての有料 dyno で利用でき、Heroku ダッシュボードで確認できます。 アプリケーション・メトリクス関連資料→

しきい値アラート

しきい値アラート機能では、web dyno の応答時間の 95 パーセンタイルの上限と、失敗したリクエストの割合を指定でき、これらのしきい値を超えた場合はアラートが発行されます。通知の方法としては、E メール、PagerDuty、およびダッシュボードでの表示に対応しています。しきい値アラート機能は Professional dyno または Private dyno で実行しているアプリで利用できます。 しきい値アラート関連資料→

自動スケール

自動スケール機能は、応答時間の 95 パーセンタイルが一定のしきい値を超えた場合に、既存のスループットにもとづいてアプリの web dyno の数を増やす機能です。自動スケール機能を使えば、トラフィックの急増を心配する必要がなくなります。Performance dyno と Private dyno では追加料金なしで自動スケール機能を使用できます。 自動スケール関連資料→

統合ログ

ダッシュボード内またはコマンドラインインターフェース(CLI)でアプリのログを確認すると、イベントやエラーの内容を詳細に把握できます。Elements マーケットプレイスのログ記録用アドオンのいずれかを使用してログを収集すると、情報の長期保存、検索、フィルタリング、トラブルシューティングなどが可能になります。 統合ログ関連資料→

アプリ Webhook

アプリ Webhook を使用して特定のイベントを登録すると、Heroku アプリに変更があったときに通知を受け取ることができます。Webhook を使用すれば dyno フォーメーションの変更やアプリのリリースなどの変更を運用ワークフローに取り入れることができます。 アプリ Webhook 関連資料→

Heroku Exec

Heroku Exec を使用すれば実行時に SSH 経由で dyno に接続してデバッグを簡単に行えます。Exec では dyno からファイルをコピーしたり、ローカルポート転送を使用してリモートデバッガーをアタッチしたり、一般的な Java デバッグツールを利用したりすることができます。 Heroku Exec関連資料→

ランタイム・メトリクス

言語ランタイム・メトリクスでは、ヒープメモリ、非ヒープメモリ、ガベージコレクションアクティビティなど、言語固有の主要なパフォーマンスメトリクスが表示されるので、アプリのパフォーマンスに関する問題の根本原因を詳しく分析できます。 ランタイム・メトリクス関連資料→

Heroku の運用担当者向け機能の紹介
00:0000:00
アプリの状態の可視化

アプリ関連のメトリクスは最大 7 日間保持できるので、さまざまなトレンドを把握し、アプリの異常をすばやく発見することができます。また、言語ランタイム関連のメトリクスや Exec を利用するとさらに詳細な情報を入手できるので、パフォーマンスのボトルネックが生じている根本原因をピンポイントで特定できます。

問題の自動通知

アプリの状態は Heroku が常に確認しているので、お客様自身で監視する必要はありません。web dyno の応答時間やエラー率が指定されたしきい値を超えると、Heroku から通知が届きます。また、Web フック通知を使用すれば、アプリの変更をカスタムワークフローに簡単に取り入れることができます。

スムーズなスケール

遅延が設定したしきい値を上回ることのないように web dyno の数が自動で調整されるので、トラフィックの急増に絶えず目を光らせる必要はありません。

パフォーマンス調整のガイダンス

言語別アプリケーションガイダンスなどの機能を活用すると、アプリの問題をすばやく発見して修正することができます。

追加料金不要

Hobby dyno またはそれ以上のレベルの dyno では、追加料金を負担することなくメトリクス機能を利用できます。dyno のレベルが高くなるほど、高度な機能を利用できるようになります。

容易なデバッグ

言語ランタイム関連のメトリクスを使用すると、アプリでメモリリークが発生した場合に簡単に診断を行えます。その後、Heroku Exec で実行時の dyno に直接接続すれば、根本原因を突き止められます。

「Heroku は私たちの『opsチーム』です。DevOps を雇いインフラストラクチャまで責任を持つのと比べると、Heroku は物事をずいぶん簡単にしてくれます。」

DANNY GREG
Everlane 社エンジニアリングディレクター
Everlane 様事例→

「テストが始まりシステムへの需要が高くなるとすぐに、Heroku はアプリの性能を注意深く監視し、その場で必要に応じて dyno をスケールアップさせてくれます。」

KJ CHABRA
Altus Assessments 社ソフトウェア開発チームリード
Altus Assessments 様事例→

「Heroku はアプリの運用管理を簡単にしてくれます。アプリが成長して Sugarmate のスケールが必要になり、私たちは安心して良いことがわかりました。Heroku を長い間使っていこうと思う所以です。」

JOSH JUSTER
Sugarmate 社創業者
Sugarmate 様事例→

ポッドキャスト

アプリケーションの運用の合理的なアプローチと、Heroku の自動スケールについて

2017 年 2 月 28 日に開催された Software Engineering Daily の模様をポッドキャストでお聞きください。

このポッドキャストでは、Heroku で運用エクスペリエンスエンジニアを務める Andrew Gwozdziewycz が、アプリを正常な状態に保つことの重要性や Heroku のメトリクスプラットフォームのアーキテクチャのほか、Heroku のメトリクスがどのようにして自動スケールの基盤になっているかについて語っています。