概要
ServiceNow は、企業のエンタープライズレベルの IT プロセスを 1 か所で記録、追跡、管理するための IT サービス管理プラットフォームです。
Datadog ServiceNow インテグレーションは双方向インテグレーションです。これを使用すると、以下のことが可能です。
- Datadog で生成されたイベントを ServiceNow のチケットに送信し、また IT サービス管理 (ITSM) および IT 運用管理 (ITOM) を通じて Datadog 内部で解決ワークフローを管理します
- サービスグラフコネクタを使用して、ServiceNow Configuration Management Database (CMDB) の構成アイテム (CI) の発見メカニズムとして Datadog を使用します
- Datadog からのホストやサービスの情報を使用して、ServiceNow CMDB に CI として保存されているビジネス固有の情報を充実させることで、インフラストラクチャーの利用状況をより深く理解し、トラブルシューティングを加速し、リソース利用を最大化することができます
Datadog は、以下の ServiceNow ツールと統合されます。
注: Datadog ServiceNow インテグレーションは、サポート終了と記載されていない ServiceNow リリースをサポートしています。
Datadog で ServiceNow タイルを構成する
- Datadog で、Integrations ページの ServiceNow インテグレーションタイルに移動します。
Add New Instance
をクリックします。- ServiceNow ドメインのサブドメインであるインスタンス名、
<インスタンス>.service-now.com
を追加します。 - ServiceNow インスタンスのユーザー名とパスワードを追加します。
注: Datadog のためだけに ServiceNow で制限ユーザーを作成できます。
CMDB のセットアップ
Datadog 用サービスグラフコネクタ
Datadog 用サービスグラフコネクタにより、Datadog によって検出された新しいリソースの CMDB に、サーバーとデータベースの構成アイテム (CI) が自動的に入力されます。サービスグラフコネクタは ServiceNow ストアから入手可能です。
コンフィギュレーションについては、サービスグラフコネクタのガイドに記載されたセットアップ手順に従ってください。
サポートされる CI の種類
下記の記述は、すでに ServiceNow ITOM/ITSM インテグレーションを構成済みの場合のみ適用されます。
- サービスグラフコネクタでは、コンフィギュレーションタイルの
Target table
値と Custom table
値を使用しません。Target テーブルのデフォルト値とのインテグレーションを保存できます。 - サービスグラフコネクタのセットアップ手順に記載されているように、ユーザーに cmdb_import_api_admin ロールを付与することで、同じ ITOM/ITSM ユーザーをサービスグラフコネクタで使用できます。
ホストのタグ付け
ホストのタグ付けにより、ServiceNow CMDB のメタデータで Datadog ホストをリッチ化します。
ホストタグの取り込みを有効にするには
- ServiceNow インスタンスで、Datadog でタグ付けしたいすべてのホストを返す Query Builder クエリを構成します。
- 希望の更新間隔でクエリを実行するようにスケジュールします。
- クエリを ServiceNow に保存したら、Datadog の ServiceNow インテグレーションタイルに移動します。Host Tagging タブを選択します。
- Query Configuration の下にある、Add New Row ボタンをクリックします。
- ドロップダウンメニューから、ServiceNow Instance と Query を選択します。
- クエリの root CI のホスト名フィールドを Datadog のホスト名フィールドにマッピングする Hostname Column の値を選択します。
- Column Name Maps で任意のフィールド名の再マッピングを選択します。
- Save をクリックします。
クエリのスケジュール実行後すぐにホストタグが Datadog に入力されます。
Datadog のイベントエクスプローラーで、検索クエリを source:servicenow
にスコープして、取り込みプロセスを監視します。
ヘルプ
ホストのタグ付けが正しく機能するためには、以下のことがシステムで正しいことを確認してください。
- Query Builder クエリを作成・実行するユーザが、Datadog 構成のユーザ名と一致している。ServiceNow のユーザーは
cmdb_query_builder_read
というロールを持っている必要があります。 - クエリが返す結果の数は、ServiceNow の
glide.cmdb.query.max_results_limit
設定以下でなければなりません。デフォルトでは、結果の最大数は 10000 です。設定を変更するには、Configuration -> CMDB Properties -> Query Builder Properties に移動します。 - Query Builder クエリで構成されるすべての CI には 1 ラベルが必要です。これにより、パーサーがサポートしない重複した CI を作成していないことを確認できます。
制限
- 取り込みは 1 回の実行につき 100k ホストに制限されています。
- ホストへの更新は 1 時間あたり数千件に制限されます。スケジュール間隔を選択する際にはこの制限を考慮してください。
- Datadog のホストエイリアスは大文字と小文字を区別するため、小文字のホスト名を持つ Linux マシンではタグ付けが機能しません。
サービスの取り込み
サービスの取り込みにより、ServiceNow CMDB メタデータで Datadog サービスカタログをリッチ化します。
サービス取り込みを使用すると、ServiceNow CMDB から Datadog サービスカタログにサービスを取り込むことができます。
計画と使用
サービスデータの取り込みを有効にするには
- ServiceNow インスタンスで、サービスカタログを充実させたいすべてのサービスを返す Query Builder クエリを構成します。
- 希望の更新間隔でクエリを実行するようにスケジュールします。
- クエリを ServiceNow に保存したら、Datadog の ServiceNow インテグレーションタイルに移動します。Service Ingestion タブを選択します。
- Query Configuration の下にある、Add New Row ボタンをクリックします。
- ドロップダウンメニューから、ServiceNow Instance と Query を選択します。
- Service Name Column ドロップダウンメニューから値を選択します。この値は、クエリのルートサービス CI 上の列名と一致し、サービスカタログのサービス名を入力します。
- スキーママッピングを構成して、サービスに関する追加のメタデータをサービスカタログに取り込みます。詳細はサービス定義を参照してください。Datadog が取り込みを受け入れるためには、マッピングの各フィールドが、サービスカタログのサービス定義スキーマにマッピングされる正しいタイプである必要があります。
- Save をクリックします。
Datadog にサービスデータが反映されるのは、クエリのスケジュール実行の数分後です。取り込みエラーを表示するには、イベントエクスプローラーで source:servicenow
でイベントを検索します。
ヘルプ
サービスの取り込みが正しく機能するためには、以下のことがシステムで正しいことを確認してください。
- Query Builder クエリを作成・実行するユーザが、Datadog 構成のユーザ名と一致している。ServiceNow のユーザーは
cmdb_query_builder_read
というロールを持っている必要があります。 - クエリが返す結果の数は、ServiceNow の
glide.cmdb.query.max_results_limit
設定以下でなければなりません。デフォルトでは、結果の最大数は 10000 です。設定を変更するには、Configuration -> CMDB Properties -> Query Builder Properties に移動します。 - Query Builder クエリで構成されるすべての CI には 1 ラベルが必要です。これにより、パーサーがサポートしない重複した CI を作成していないことを確認できます。
ITOM と ITSM のセットアップ
Datadog インテグレーションを @-mentions と Case Management に使用するには、以下の手順に従ってください。
- 最新の Datadog Update Set のインストール
- Datadog アカウントのアクセス許可の設定
- ITOM と ITSM で使用するための Datadog の構成
Datadog Update Set のインストール
最新のアップデートセットはこちらからダウンロードしてください: Datadog-Snow_Update_Set_v2.4.3.xml
注: Case Management とのインテグレーションは、v2.4.0 以降でのみサポートされています。
ServiceNow で以下を実行します。
- ダウンロードした Update Set XML ファイルを手動でインポートします。
- XML ファイルをインポートすると、Update Set の状態が
Loaded
になります。Update Set の名前をクリックして、変更をプレビューします。 - Update Set をプレビューしてエラーがないことを確認したら、Commit Update Set を選択してアプリケーションをお使いのシステムにマージします。
セットアップ完了後、ServiceNow のナビゲーションメニューで Datadog を検索し、4 つのテーブルにアクセスします。
Datadog Incident
Datadog Event
Datadog Case Incident
Datadog Case Event
ヘルプ
インポートテーブルにアクセスして変換マップを適用するには、ServiceNow ユーザーに次のロールが必要です。
x_datad_datadog.user
import_set_loader
import_transformer
Incident テーブルまたは Event テーブルに直接通知を送信する場合、ServiceNow ユーザーは以下のロールが必要です。
x_datad_datadog.user
ITIL
evt_mgmt_integration
ITOM および ITSM モジュールで使用するために Datadog を構成する
注: 以下のステップを完了する前に、Datadog インテグレーションページで ServiceNow タイルをセットアップする必要があります。
Datadog で @servicenow-<INSTANCE_NAME>
を使用した Monitor Notifications の場合、ServiceNow タイルで通知を送信する中間テーブルを選択します。
- Monitor Notifications ドロップダウンから、通知用のテーブルを選択します。
- インテグレーションが正しくセットアップされているかを検証するには、モニターまたはイベント通知に
@servicenow-<INSTANCE_NAME>
を追加します。未加工のデータが中間テーブルの行に挿入され、作成したマッピングと変換で指定されている ServiceNow テーブルに転送されます。 - ServiceNow で変換マップを使用して、テーブルに送信されるデータのフォーマットをカスタマイズします。
- Datadog 変数またはカスタム文字列を使用して、通知ペイロードをカスタマイズします。
Datadog の Case Management を使用している場合、ServiceNow タイルでケースを同期する中間テーブルを選択できます (デフォルトでは無効)。
- Case Management ドロップダウンから、ケースのテーブルを選択します。
- インテグレーションが正しくセットアップされていることを確認するには、Datadog の Case Management に移動し、Create ServiceNow Incident を選択します。インスタンスとオプションの割り当てグループを選択し、Create をクリックします。
- ServiceNow で変換マップを使用して、テーブルに送信されるデータのフォーマットをカスタマイズします。
注: Datadog Case Event
テーブルは更新用にセットアップされていません。このバージョンでは Datadog Case Incident
テーブルの使用を推奨します。
変換マップを使用してデータをカスタマイズする
Datadog Incident および Datadog Case Incident テーブルは、変換マップを使用して Datadog レコードを ServiceNow インシデントに変換します。
同様に、Datadog Event および Datadog Case Event は、Datadog レコードを ServiceNow イベントに変換します。
ヘルプ
ServiceNow のテーブルにイベントが表示されず、代わりに
Datadog インテグレーションタイルにエラーメッセージが表示される、または Error while trying to post to your ServiceNow instance
通知を受け取った場合
- インスタンス名を入力したときに、サブドメインのみを使用したかを確認します。
- 作成したユーザーが必要なアクセス許可を持っているかを確認します。
- ユーザー名とパスワードが正しいことを確認します。
インテグレーションが構成され、アラートがトリガーされているが、チケットが作成されない場合
- 中間テーブルにデータが挿入されるかを確認します。データが挿入される場合、問題はマッピングと変換にあります。ServiceNow の Transform Errors に移動し、マッピングとスクリプトをさらにデバッグします。
- タイルで指定した中間テーブルを使用していることを確認します。
ServiceNow ユーザーは、インポートテーブルにアクセスできるように、rest_service
および x_datad_datadog.user
ロールが必要です。インシデントテーブルまたはイベントテーブルのいずれかに直接通知を送信する従来の方法を使用している場合は、itil
および evt_mgmt_integration
のアクセス許可が必要です。
ご不明な点は、Datadog のサポートチームまでお問い合わせください。
ナレッジベース
Datadog インポートホストのオートフラッシュルール
インポートセットテーブル x_datad_datadog_import_host
が蓄積する行が増えすぎることを防ぐために、最後の 24 時間のデータのみを保持するオートフラッシュルールがテーブルクリーナーツールに追加されました。このコンフィギュレーション設定は、必要に応じて、フィルターナビゲーターで sys_auto_flush_list.do
に移動し、x_datad_datadog_import_host
テーブルのルールに入ることで変更できます。必要に応じて Age in seconds
フィールドを更新できます。
Datadog アラートからのサポートチケットの自動生成
ServiceNow が Datadog アカウントに接続されると、受信したアラートから自動的にサポートチケットを作成し、それを ServiceNow のチケットキューに送信できます。そこから、サポートチームは、ServiceNow 内で既に確立されている通信ワークフローを使用して、問題の通知を受けます。アラートメッセージで @servicenow
をメンションするか、モニターの通知リストに @servicenow
を追加します。
チケットペイロードとフィールドマッピングでの変数の使用
アラートの本文やフィールドマッピングで変数を使用して、ServiceNow にイベントの詳細を挿入することができます。たとえば、タイトルと重大度を該当する ServiceNow フィールドに含めたり、ServiceNow のチケットから Datadog 内の特定のインシデントに戻るリンクを入れたりすることができます。
インシデント優先度のフィールドマッピング
ServiceNow インシデントの priority
フィールドは読み取り専用で、優先度ルックアップ規則を使用してのみ更新することができます。
ServiceNow のインシデント優先度を計算するために、モニターで Impact
と Urgency
を定義します。
サポート解決ワークフローの自動化
モニターステータスが正常に戻ると、関連付けられているサポートチケットが自動的に「resolved」としてマークされます。
カスタムマッピングの定義
テーブルの 1 つ、例えば Datadog Incident Tables をクリックし、レコードの一番下までスクロールすると、関連付けられている変換マップへのリンクが表示されます。
マッピングの確認
変換マップ名をクリックすると、レコードを確認できます。
上部には、変換レコードに関する 2 つの重要なフィールド、Source table
と Target table
があります。
注:
- ソースは、選択したインポートセットテーブル (ここでは、Datadog Incident Tables)、ターゲットは、イベントが格納される実際のインシデントテーブル (またはイベントテーブル) です。
- フィールドマッピングは、レコードの下部にあります。いくつかの基本的なマッピングが含まれています。ここで、含めるフィールドを選択したり、形式を定義したり、ServiceNow インスタンス内のターゲットフィールドを選択したりします。
新しいフィールドマッピングの追加
New をクリックします。
1 対 1 マッピングのソースフィールドとターゲットフィールドを選択します。
または、Use source script チェックボックスをオンにして、変換を定義します。
注: インテグレーションタイルのカスタムフィールドをマッピングする場合、Datadog イベントマップとインシデント変換マップのいずれかに次のマッピングスクリプトを使用できます。この例では、フィールド my_field
がインテグレーションタイルのカスタムフィールドとして定義されています。
answer = (function transformEntry(source)
{
var additional_info = JSON.parse(source.additional_info);
return additional_info.custom_my_field;
})(source);
複数のマッピングを定義する
Mapping Assist (関連リンクの下にあります) を使用すると、複数のソースとターゲットフィールドを一度にマップできます。
検証
インテグレーションが正しくセットアップされているかを検証するには、モニターまたはイベント通知に @servicenow
を追加します。未加工のデータが中間テーブルの行に挿入され、作成したマッピングと変換で指定されている ServiceNow テーブルに転送されます。
その他の参考資料