5
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

外形監視が特定の時間帯で動かないようにダウンタイムを設定してみた!

Last updated at Posted at 2024-02-06

概要

New RelicのSyntheticをつかって外形監視をしているときに、対象のシステムが動作していない時間帯に外形監視をしてしまうと必ず実行結果として失敗になってしまうため、その時間帯だけは外形監視を止めたいということは無いでしょうか?

この記事ではSyntheticのダウンタイムを設定する方法を試してみたいと思います。

New Relic アップデート(2023年12月)で、ダウンタイム設定が24時間を超えて設定できるようになっています。

このアップデートの詳細はこちら
New Relic アップデート(2023年12月)
New Relic アップデート

事前準備

ダウンタイム設定をする対象となるSyntheticが必要なので、Syntheticを1つ以上設定します。
New Relic Syntheticの公式ガイドはこちらです。

Syntheticを設定したことが無い方は、URLを設定するだけで外形監視ができるPingかSimple Browserがおすすめです。

UIから設定する手順

まずはじめにNew RelicのUIからダウンタイムを設定してみます。

1. Monitor downtimeページを表示

Synthetic Monitoring > Monitor downtime から表示。

image.png

2. Monitor downtimeを作成

右上の[Create monitor downtime]をクリックして表示した画面の左側のペインで下記を設定し、右側のペインのチェックボックスで対象となるSyntheticを設定します。

  • Name (required):Monitor downtimeの名称
  • Frequency:頻度
  • All day:一日中かトグルで設定
  • Start time & Start date:ダウンタイムの開始日時
  • End time & End date:ダウンタイムの終了日時
  • Timezone:タイムゾーンを設定(日本時間の場合は、"Asia/Tokyo")

image.png

例えば、開始日時を金曜日の19:00にし、終了日時を月曜日の9:00にした場合、その間はSyntheticのチェックが実行されません。

システムメンテナンスで停止中などでアクセスできない場合にSyntheticが失敗するということが避けられ、不要なアラートが上がったり、SLIが下がるということもありません。終了時刻をすぎたら再開されます。

3. Saveボタンをクリック

Saveボタンをクリックして設定完了。

image.png

NerdGraphで設定する手順

続いてNerdGraphでダウンタイムを設定してみます。
NerdGraphを使えば、システムを停止させるスクリプトなどからAPIでSyntheticのダウンタイムを設定することが可能です。

NerdGraphの使い方の詳細は公式ガイドを参照ください。

1. NerdGraph API Explorerを表示

下記URLからNerdGraph API Explorerを表示します。

image.png

2. NerdGraph API Explorerでクエリを作成

下記リンクのクエリをコピーして貼り付け。

image.png

下記の値を設定。

  • accountId:アカウントID(数字)
  • name:Monitor downtimeの名称
  • monitorGuids:ダウンタイムを設定したいEntityのGUID(複数設定可能)
  • timezone: タイムゾーンを設定(日本時間の場合は、"Asia/Tokyo")
  • startTime: ダウンタイムの開始日時
  • endTime: ダウンタイムの終了日時
mutation {
  syntheticsCreateOnceMonitorDowntime (
    accountId: アカウントID,
    name: "MonitorDowntimeName",
    monitorGuids: ["ダウンタイムを設定したいEntityのGUID", "ダウンタイムを設定したいEntityのGUID"],
    timezone: "Asia/Tokyo"
    startTime: "2024-02-02T12:00:00"
    endTime: "2024-02-02T13:00:00"
  ) {
    guid,
    accountId,
    name,
    monitorGuids,
    timezone,
    startTime,
    endTime
  }
}

2. NerdGraph API Explorerでクエリを実行

[Execute Query]ボタンでクエリを実行して、ダウンタイムを設定。

image.png

3. おまけ

NerdGraph API ExplorerのToolsからCURL用のスクリプトをコピーできます。
image.png

まとめ

New RelicのSyntheticを特定の時間帯で動かないようにダウンタイムを設定する方法を紹介しました。

外形監視の対象システムが動作していない時間帯にダウンタイムを設定することで、不要な外形監視の実行結果を防ぐことができるのでぜひ試してみてください。

このアップデートの詳細はこちら
New Relic アップデート(2023年12月)
New Relic アップデート

New Relic株式会社のQiita OrganizationOrganizationでは、
新機能を含む活用方法を公開していますので、ぜひフォローをお願いします。

5
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?