本機能ではhttpまたはhttpsに対しての監視を行います。
URL外形監視を設定する
画面左側メニューの監視ルールより「監視ルールを追加」のボタンをクリックします。「外形監視」をクリックすると以下の項目が表示されますので、各項目に値・名称を記述して作成ボタンをクリックします。
監視対象
| 設定項目 | 説明 |
|---|---|
| HTTP メソッド | GET / POST / PUT / DELETE から選択できます。 |
| URL | http または https を選択し、それ以後の URL を記述してください。 |
基本設定
| 設定項目 | 説明 |
|---|---|
| 監視ルール名 | 本監視ルールの名前を記述してください。 |
| 監視ルールのメモ | 記述したメモの内容はアラート一覧画面で検索できます。 |
オプション
| 設定項目 | 説明 |
|---|---|
| レスポンスタイムが閾値より遅い場合にもアラートを発生させる | この外形監視を任意のサービスに紐づけることで、レスポンスタイムに対して任意の閾値を設定できるようになります。あわせてレスポンスタイムのサービスメトリックについてをご覧ください。 注意:このオプションを有効にした場合、紐づけたサービスのサービスメトリックとしてレスポンスタイムが投稿され、1メトリックぶんの料金が発生します。 |
| Warning条件 / Critical条件 | レスポンスタイムが指定した秒数を超える場合にアラートが発生します。15,000ms(15 秒)以上を指定した場合でも、15,000ms以内に応答がない場合はタイムアウトになります。 注意:サービスに紐づけた場合に設定可能です。 |
| 平均値監視 | 過去 1 分 〜 10 分間の範囲で指定されたレスポンスタイムの平均値を監視します。 注意:サービスに紐づけた場合に設定可能です。 |
| アラート発生までの最大試行回数 | Warning / Critical のアラートに相当する異常が指定回数連続で発生した場合にアラートを発生させます。 |
| 通知の再送間隔 | アラートの状態が指定された時間を超えても変化がない場合に再度通知します。 |
| HTTP リクエストヘッダ | リクエストに任意の HTTP ヘッダを指定できます。User-Agent の指定がない場合は User-Agent: mackerel-http-checker/x.y.z が送信されます(x.y.z にはバージョン番号が入ります)。デフォルトで Cache-Control ヘッダに no-cache が指定されています。 |
| リクエストボディ | リクエスト時のメッセージボディを指定します。 |
| ステータスコードのチェック | ステータスコードが指定したコード以外の場合にアラートを発生させます。 |
| レスポンスボディのチェック | レスポンスボディに指定の文字列が含まれているかをチェックします。指定された文字列がレスポンスボディに含まれていない場合にアラートを発生させます。 |
| 証明書の有効期限の監視 | SSL証明書の有効期限を監視します。有効期限の残り日数が閾値を下回った場合にアラートを発生させます。 |
| リクエスト時に証明書の確認を行わない | 自己署名証明書を設置したサーバーを監視する際に、証明書の確認を行わずに監視を行うことができます。 |
| レスポンスヘッダに従ってリダイレクトする | リダイレクト先のレスポンスを結果として評価します。 |
URL外形監視の仕様について
- チェック間隔は1分毎の固定となります。
- 次の条件でエラーと認識し、アラート通知が実行されます
- ステータスコードが4xx系または5xx系の場合、またはステータスコードのチェック(オプション)で指定したコード以外の場合
- タイムアウト(15秒)となった場合
- SSL証明書が不正の場合
- レスポンスタイムが閾値を超えている場合(オプション)
- レスポンスボディに指定した文字列が含まれていない場合(オプション)
- SSL証明書の有効期限の残り日数が閾値を下回っている場合(オプション)
- 2xx系の応答はエラーではない正常な応答として認識します
- リダイレクトのフォローに対する挙動は設定によって変更できます
- フォローをしない場合、3xx系の応答はエラーではない正常な応答として認識します
- フォローをする場合、レスポンスヘッダの内容に従ってリダイレクトを行います
- 3回以上のリダイレクトはエラーとなり、アラート通知が実行されます
- 監視対象 URL から cookie を受け取った場合(set-cookie)、リダイレクト先へは受け取った cookie 情報を含めてリクエストします
- Basic認証を利用しているURLを監視したい場合
- HTTP リクエストヘッダ に Authorization ヘッダを指定する
Name: AuthorizationValue: Basic xxxxxxxxxxにはuser:password(認証情報の組み合わせ)を base64 形式でエンコードした文字列を記述します
- 監視対象 URL を
https://user:password@example.com/のように認証情報を含める形にする
- HTTP リクエストヘッダ に Authorization ヘッダを指定する
レスポンスタイムのサービスメトリックについて
オプションの「レスポンスタイムが閾値より遅い場合にもアラートを発生させる」でサービスに紐づけた場合、そのサービスのサービスメトリックとしてレスポンスタイムが投稿されます。
サービスメトリックの確認方法
- サービス一覧で紐づけたサービスを選択
- 「サービスメトリック」タブを選択
「HTTP Response Time」というグラフに投稿されます。グラフに表示されるメトリック名は外形監視の監視ルール名になります。名前ではなくアルファベットや数字の羅列で表示されるものがある場合、それはすでに削除された外形監視のメトリックです。必要に応じて後述のサービスメトリック名についてで触れているグラフ定義から削除してください。

サービスメトリック名について
レスポンスタイムのサービスメトリックは式で扱うこともできます。式で扱う場合のサービスメトリック名は、以下の形式になっています。
__externalhttp.responcetime.<監視ルールID>
- 監視ルールIDは、外形監視の編集画面のURL末尾の文字列になります。
「HTTP Response Time」グラフ右上の歯車アイコン(グラフ定義)をクリックし、表示されたモーダルでメトリック名をマウスオーバーすることでも確認できます。

URL外形監視の監視元IPアドレスについて
Mackerelからの通知のリクエスト元IPアドレスレンジと同じとなります。
詳細はWebhook通知や外形監視など、Mackerelからの通知元IPアドレスは?をご覧ください。
利用可能なプランについて
本機能はTrialプランまたは有料プランでのみご利用いただけます。
利用料金について
利用料金算出方法をご覧ください。
アラートサンプル
監視ルールを追加するとサイドメニューにあるMonitorsの一覧に以下のように表示されます。

アラートが発生した際には以下の様な表示となり、アラート詳細画面で詳細が確認できます。
画像上で表示されている503はHTTPステータスコードです。
復旧した場合は復旧時のHTTPステータスコードが表示されるようになります。

