ServiceNow 用 OpenLM ACC Plugin
組織のワークステーションですでに ServiceNow Agent Client Collector (ACC) を運用している場合、OpenLM ACC Plugin を使うとそのエージェントを OpenLM Platform に活用できます。追跡するアプリケーションは OpenLM Process Manager で選択します。プラグインはそのリストを ACC エージェントに渡し、エージェントが報告した内容を収集して OpenLM に送信します。これらのマシンに OpenLM Workstation Agent をインストールする必要はありません。
このプラグインは ServiceNow アプリケーションです。ServiceNow インスタンスで All を開き、OpenLM ACC Plugin を選択します。ACC エージェントが報告した内容は、OpenLM Platform の Agent Activity Manager、Process Manager、Agents Hub、Product Discovery に表示されます。
仕組み
何を追跡するかは OpenLM が決めます。ServiceNow のエージェントはデータを収集して届けます。
- 追跡したいアプリケーションを OpenLM Process Manager に追加します。
- プラグインは 1 時間ごとに OpenLM からそのリストを取得し、登録したマシン上の ACC エージェントに渡します。
- エージェントは決まったスケジュールで各マシンをチェックし、通常の ACC と同じように、MID (Management, Instrumentation, and Discovery) Server を経由して結果を ServiceNow インスタンスに返します。
- プラグインは 1 分ごとに、キューに入った結果をインスタンスから OpenLM に送信します。OpenLM に接続できない場合は結果を保持して再試行します。
- OpenLM はこのデータを OpenLM エージェントからのデータと同じように受け取るため、ほかの OpenLM データと同じ画面やレポートに表示されます。
データは ServiceNow から OpenLM への一方向にだけ流れます。OpenLM が CMDB やその他の ServiceNow レコードに書き込むことはありません。プラグインは、設定と送信キューを独自のテーブルに保持します。
エージェントが報告する内容
| エージェントが報告する内容 | 頻度 | OpenLM での表示場所 |
|---|---|---|
| マシンとサインイン中のユーザー: ホスト名、ユーザー名、IP アドレス、プラグインのバージョン | 1 時間ごと | Agent Activity Manager の ServiceNow ACC Agent の行 |
| ハートビート | 5 分ごと | Agent Activity Manager の Online 状態 |
| 実行中の追跡対象アプリケーション、それぞれがアイドル状態かどうか、読み込まれているダイナミックリンクライブラリ (DLL) | 1 分ごと | Process Manager の Active Processes と Process Sessions |
| マシンにインストールされているソフトウェア | 1 日 1 回 | Product Discovery |
| ユーザーがアクセスしたウェブサイト | 15 分ごと | Agents Hub の Discovered Web Services |
エージェントは、各セッションにサインインしているユーザーを報告します。誰もサインインしていない場合、ユーザー名は空になります。OpenLM 自身のエージェントと同じく、各マシンから報告されるユーザー名ごとに 1 つのエージェントとして数えられます。ハートビートが届いている間、エージェントはオンラインと表示されます。OpenLM がそのマシンから 15 分間何も受信しないと、オフラインに切り替わります。
はじめる前に
次のものが必要です。
- ServiceNow Agent Client Collector。少なくとも 1 台の MID Server と、監視対象のワークステーションにインストールおよび登録された ACC エージェントが必要です。各マシンが Agent Client Collector > Agents に表示され、構成管理データベース (CMDB) のコンピューターレコードにリンクされている必要があります。
- 監視対象マシンのサポート対象オペレーティングシステム: Windows x64、macOS 10.15 以降 (Intel) または macOS 11 以降 (Apple シリコン)、glibc 2.17 以降の Linux x86_64。
- インスタンスにインストールされた OpenLM ACC Plugin。ServiceNow Store からインストールします。各マシンで実行される OpenLM のチェックも含まれています。プラグインは現在 Store での公開手続き中です。公開されるまでは、OpenLM にお問い合わせください。
- OpenLM の署名ファイル:
sign.zipとsign.crt、および macOS と Linux のマシン用のtrust-acc-signing-cert.sh。これらのファイルは OpenLM が提供します。展開方法は署名証明書を展開するで説明します。 - ServiceNow インスタンスから OpenLM Platform のリージョンへの送信 HTTPS 接続。プラグインは MID Server を経由せず、インスタンス自体からデータを送信します。
- プラグイン用の ServiceNow ロール。
x_oplm_openlm_ac_0.adminロールでは、接続の設定、マシンの登録、オンデマンド操作の実行ができます。x_oplm_openlm_ac_0.userロールでは、プラグインのリストを開けます。 - OpenLM Platform の Products で Process Monitoring が有効化されていること。有効化されていない場合、OpenLM は空のプロセスリストをプラグインに送り、プロセスの報告を破棄します。
- OpenLM の OAuth クライアント資格情報: OpenLM アカウント用の Client ID と Client Secret。作成方法は次のセクションで説明します。
OpenLM でクライアント資格情報を取得する
プラグインは、OpenLM Identity で作成した OAuth クライアントを使って OpenLM アカウントに認証します。
- OpenLM Platform で Navigation を開き、Identity を選択します。
- Identity のナビゲーションメニューの Management で Authorization を選択します。
- Add Client を選択します。
- Select Client Type を Agent に設定します。
- Description を入力します (例:
ServiceNow ACC Plugin)。 - Save を選択します。
- Client ID と Client Secret をコピーします。
Client Secret はクライアントの作成時に一度だけ表示されます。ServiceNow に入力するまで、シークレットマネージャーに保管してください。紛失した場合は、シークレットをリセットするか、新しいクライアントを作成します。
プラグイン専用のクライアントを作成してください。そうすれば、そのシークレットをリセットしてもほかに影響しません。
追跡するアプリケーションを選択する
エージェントが報告するのは、OpenLM Process Manager に定義されたアプリケーションだけです。通常は、最も高価なソフトウェアや、ライセンスの制約が最も厳しいソフトウェアを定義します。プラグインを接続する前に、少なくとも 1 つ追加してください。登録したマシンに OpenLM のチェックが届くのは、プラグインが OpenLM から少なくとも 1 つのプロセスを受け取った後です。
- OpenLM Platform で Process Manager を開き、各アプリケーションをプロセスとして追加します。プロセスを追加または編集するを参照してください。
- アプリケーションが読み込む DLL で追跡するには、プロセスに DLL を関連付けます。
- アプリケーションがアイドル状態になった時間を記録するには、プロセスの Track Process Idle/Active Periods をオンにします。オンにしない場合、アプリケーションは実行中ずっと使用中として報告されます。
プラグインは 1 時間ごと、Set Up Connection で Save and Test が成功した直後、および Sync Now を選択したときにリストを取得します。すぐに取得するには、ServiceNow で OpenLM ACC Plugin > Tracked Processes を開き、Sync Now を選択します。同期はバックグラウンドで実行されるため、しばらくしてからリストを更新してください。
Tracked Processes の各行には、Process Manager の Monitoring Target、エージェントが探す Process Key (実行ファイル名を小文字にし、.exe を除いたもの)、DLLs、行が最後に同期された日時 (Last Synced) が表示されます。リストが変わると、プラグインは ACC 監視ポリシーを再発行し、エージェントは新しいリストを受け取ります。ServiceNow 側で変更する必要はありません。Process Manager で削除したプロセスは、次回の同期で Tracked Processes から消えます。
OpenLM が空のリストを返した場合、プラグインは現在のリストを保持します。そのため、一時的な問題で監視が止まることはありません。ただしその結果、Process Manager で最後のプロセスを削除しても、エージェントはそのプロセスの追跡を続けます。すべての追跡を止めるには、収集を一時停止するか、Monitored Devices からマシンを外します。
プラグインを OpenLM に接続する
プラグインが OpenLM アカウントに認証できるように、接続情報を一度入力します。
- ServiceNow で All > OpenLM ACC Plugin > Set Up Connection を開きます。
- OpenLM Base URL に、OpenLM Platform のリージョンのルート URL を、パスや末尾のスラッシュなしで入力します。
prod-us:https://cloud-us.openlm.comprod-eu:https://cloud-eu.openlm.com
- Client ID に、OpenLM の Client ID を貼り付けます。
- Client Secret に、Client Secret を貼り付けます。
- Save and Test を選択します。
プラグインは値を保存し、すぐに OpenLM にトークンを要求します。Saved and verified — connection to … is working. Tracked-process sync has been started. というメッセージは、OpenLM が資格情報を受け入れ、プラグインがプロセスリストを取得していることを示します。
Client Secret は ServiceNow の資格情報ストアに暗号化して保存されます。このページに戻ると、Client Secret フィールドは空のままです。保存済みのシークレットを維持するには空のままにし、ローテーションするには新しい値を入力します。
ページの上部には、プラグインが収集中かどうか (Plugin is active または Plugin is disabled) も表示されます。収集を一時停止または停止するを参照してください。
| Save and Test 後のメッセージ | 対処 |
|---|---|
| Base URL and Client ID are required. | 両方のフィールドに入力します。 |
| Base URL must start with https:// | https:// を含む完全な URL を入力します。 |
| Saved, but authentication failed: … | Client ID と Client Secret、およびベース URL が OpenLM アカウントのリージョンと一致しているかを確認します。 |
| Saved, but no access token was returned. Check the credentials. | Client ID と Client Secret を確認します。 |
| OAuth provider record not found (app not fully installed). | プラグインのインストールが完了していません。OpenLM の担当者に確認を依頼してください。 |
署名証明書を展開する
ACC エージェントはプラグインの署名を検証してからでないとプラグインを実行しないため、マシンを登録する前に、各エージェントが OpenLM のチェックを検証できるようにしておく必要があります。OpenLM の署名証明書を一度だけ展開します。
- エージェントが接続する各 MID Server に
sign.zipをコピーし、ACC の証明書の同期を実行します。 - 各エージェントホストのオペレーティングシステムのトラストストアで
sign.crtを信頼します。
Windows、Linux、macOS のコマンドと、事前に証明書のフィンガープリントを確認する方法については、OpenLM ACC 署名証明書を展開するを参照してください。
監視するマシンを選択する
プラグインが対象にするのは、登録したマシンだけです。マシンを登録すると、そのマシンに OpenLM のチェックが送られます。
- Agent Client Collector > Agents を開きます。OpenLM ACC Plugin > Monitored Devices を開いて Add from ACC Agents List を選択しても開けます。
- 監視するマシンのチェックボックスを選択します。ページ上のすべてのマシンを選択するには、リストのヘッダーにあるチェックボックスを使用します。
- Add to OpenLM monitoring を選択します。
結果を確認するメッセージが表示されます (例: OpenLM: added 12, skipped 3 already monitored. Policy republishes within 2 minutes.)。すでに登録済みのマシンはスキップされるため、ボタンを 2 回選択しても問題ありません。エージェントがコンピューターレコードにリンクされていないマシンは "with no linked CI" として数えられ、追加されません。
登録したマシンは Monitored Devices に表示されます。2 分以内にプラグインが ACC 監視ポリシーを再発行し、新しいマシンでチェックが始まります。
プラグインは、各マシンをそのオペレーティングシステム用のポリシーに振り分けます。Windows マシンは Dynamic_process_monitor_policy に、macOS と Linux のマシンは Dynamic_process_monitor_policy_mac_linux に振り分けられます。各デバイスが使用するポリシーは Target Policy フィールドで確認できます。自分で選択する必要はありません。
マシンの監視をやめるには、Monitored Devices でそのマシンを開き、Active をオフにします。プラグインは 2 分以内にポリシーを再発行します。
ACC エージェントのあるすべてのマシンを登録するには、システムプロパティ x_oplm_openlm_ac_0.auto_enrol_agents を true に設定します。プラグインは 1 時間ごとに、新しい ACC マシンを Monitored Devices に追加します。既定値は false なので、通常は自分でマシンを選択します。
セットアップを確認する
プラグインを接続してマシンを登録したら、つながりを 1 つずつ確認します。
- マシンが正常である。 OpenLM ACC Plugin > Monitored Devices で、各マシンの Health Status が Healthy になっています。15 分ごとのチェックを待たずにすぐ確認するには、マシンを開いて Health Check Now を選択します。
- 結果が OpenLM に届いている。 OpenLM ACC Plugin > ACC_Payloads で、新しい行が 1~2 分以内に
processed状態になります。 - エージェントが OpenLM に表示される。 Agent Activity Manager で Agent Type を ServiceNow ACC Agent で絞り込みます。登録したマシンは、最初のハートビートが届く約 5 分後に表示されます。
- 使用状況が記録される。 登録したマシンで追跡対象のアプリケーションを起動します。数分以内に Process Manager の Active Processes に表示されます。
デバイスの正常性を確認する
登録したマシンのうちどれが報告していないか、それぞれの修正を誰が担当するかを確認するには、OpenLM ACC Plugin > Monitored Devices を開きます。プラグインは有効なマシンを 15 分ごとに評価し、次のフィールドに入力します。
- Health Status: 評価結果。下の表で説明します。
- Health Issue: 問題の内容をわかりやすく説明したもの。
- Suggested Action: 推奨される対処。
- Owner Layer: 問題がある層 (ACC Agent、OpenLM Plugin、ServiceNow(ECC))。
- Agent Last Seen と Health Checked At: エージェントが最後にチェックインした日時と、プラグインが最後にマシンを評価した日時。
| Health Status | 意味 | 対処 |
|---|---|---|
| Healthy | エージェントが動作しており、マシンは OpenLM のチェックを受け取っています。 | 対処は不要です。 |
| No Agent | マシンに ACC エージェントがインストールまたは登録されていません。 | マシンに Agent Client Collector をインストールして登録し、Agent Client Collector > Agents に表示されることを確認してから、デバイスを再び有効にします。 |
| Agent Offline | エージェントが停止している、切断されている、稼働していない、障害を報告している、または 15 分以上キープアライブを送信していません。 | マシンの電源が入っていることを確認し、Agent Client Collector サービスを再起動して、エージェントが MID Server に接続できることを確認します。エージェントレコードの障害も確認します。 |
| Not Published (Health Issue が "Waiting for configuration from OpenLM…") | プラグインがまだ OpenLM から追跡プロセスのリストを受け取っていないため、登録済みのすべてのマシンを保留しています。 | プラグインを OpenLM に接続するを完了するか、Tracked Processes で Sync Now を選択します。リストが空のままの場合は、Process Manager で少なくとも 1 つのプロセスを追加します。 |
| Not Published (その他の場合) | マシンが自身の OpenLM 監視ポリシーの対象に含まれていないため、チェックを受け取っていません。 | デバイスが Active で、正しいコンピューターレコードにリンクされていることを確認します。2 分たっても対象に含まれない場合は、Agent Client Collector > Policies で、デバイスの Target Policy の発行状態を確認します。 |
| Transport Error | 直近 60 分間に、このエージェントの ECC キュー (トピック MonitoringProbe) でエラーが発生しています。 | エージェントの error 状態の ECC キューレコードを確認し、MID Server の処理能力と接続を確認します。 |
OpenLM への送信状況を確認する
エージェントが返す結果は、送信前にすべてプラグインのキューに入ります。結果が OpenLM に届いているかを確認するには、OpenLM ACC Plugin で次のいずれかのリストを開きます。
- ACC_Payloads: キューに入ったすべての結果。
- Egress – Pending/Retry: 送信待ちの結果。送信予定の早い順に表示されます。
- Egress – Failed (dead-letter): 届けられなかった結果。新しい順に表示されます。
各行には state があります。
| State | 意味 |
|---|---|
pending | 送信待ちです。プラグインは 1 分ごとにキューの行を送信します。 |
sending | 送信中です。 |
retry | OpenLM に接続できなかったか、OpenLM がサーバーエラーを返したため、送信に失敗しました。プラグインは後で再試行します。 |
processed | OpenLM が結果を受け入れました。 |
failed | 結果を届けられませんでした。理由は last_error と last_response フィールドに表示されます。 |
OpenLM に接続できない、または OpenLM がサーバーエラーを返したために送信が失敗すると、プラグインは待ち時間を毎回長くしながら再試行します (約 2 分、その後 4、8、16、32 分)。6 回目の試行も失敗すると、行は failed になります。OpenLM が結果を無効として拒否した場合 (古すぎる場合など) は、再試行せずにすぐ failed になります。送信が 10 回続けて失敗すると、プラグインは 5 分間送信を停止し、その後自動的に接続を再テストします。
失敗した結果や待機中の結果を再送するには、次のようにします。
- 失敗した結果を 1 件再送するには、その行を開いて Re-queue を選択します。
- 待機中のすべての結果を、予定時刻を待たずに今すぐ再試行するには、リストで Resume egress を選択します。
プラグインは、processed の行を 10 日後に、failed の行を 30 日後に削除します。
OpenLM は、48 時間より古い結果と、5 分以上未来の日時を持つ結果を拒否します。pending のキューが増え続ける場合は、滞留分がこの期限を過ぎる前に x_oplm_openlm_ac_0.egress_batch の値を上げてください (プラグインの設定を参照)。
収集を一時停止または停止する
プラグインによるキューへの追加と送信をすべて止めるには、システムプロパティ x_oplm_openlm_ac_0.plugin_active を false に設定します。管理者は、Set Up Connection ページの Change setting リンクからこのプロパティを開けます。再開するには true に戻します。
次の 2 つの場合も、プラグインは結果を破棄します。
- Monitored Devices に有効なマシンが 1 台もない場合。これにより、古いチェックを実行し続けているエージェントが、登録を外したマシンのデータを送信することはありません。
- 接続情報が削除されている場合。送信先がないためです。
プラグインの設定
プラグインは次の ServiceNow システムプロパティを読み取ります。ほとんどのインスタンスでは既定値のままで問題ありません。
| プロパティ | 既定値 | 制御する内容 |
|---|---|---|
x_oplm_openlm_ac_0.plugin_active | true | メインスイッチ。false の場合、プラグインは何もキューに追加せず、送信もしません。 |
x_oplm_openlm_ac_0.auto_enrol_agents | false | true の場合、ACC エージェントのあるすべてのマシンが 1 時間ごとに Monitored Devices に追加されます。 |
x_oplm_openlm_ac_0.egress_batch | 1000 | プラグインが 1 分あたりに送信するキューの行数。目安は、監視対象エージェント数の約 1.3 倍です。既定値で約 780 エージェントに対応します。 |
x_oplm_openlm_ac_0.egress_max_events | 900 | 1 回のリクエストで OpenLM に送信する結果の最大数。 |
x_oplm_openlm_ac_0.egress_max_bytes | 4000000 | OpenLM に送信するリクエストの最大サイズ (バイト)。 |
x_oplm_openlm_ac_0.egress_max_retries | 6 | 行を failed にするまでに送信を試行する回数。 |
制限事項
- ライセンスの自動解放はありません。 ACC エージェントは使用状況を報告しますが、アイドル状態のアプリケーションを閉じることはできません。Process Manager の Automatic Process Release のルールは、プラグイン経由で監視しているマシンには適用されません。
- 送信されない情報があります。 OpenLM は、ACC エージェントから CPU やメモリの使用量、MAC アドレス、オペレーティングシステムのバージョン、ドメイン、ソフトウェアのインストール日、ウェブサイトのアクセス回数を受け取りません。
- エージェントの管理は ServiceNow で行います。 ACC エージェントのインストール、更新、再起動は ServiceNow のツールで行います。Agent Activity Manager のアップグレードと再起動の操作は、Workstation Agent にのみ適用されます。
トラブルシューティング
| 問題 | 原因と対処 |
|---|---|
| Save and Test で認証エラーが表示される。 | Client ID または Client Secret が間違っているか、ベース URL が OpenLM アカウントとは別のリージョンを指しています。3 つの値をすべて確認します。クライアントの種類が Agent であることも確認します。 |
| すべてのマシンが Not Published で、"Waiting for configuration from OpenLM…" と表示される。 | プラグインがまだプロセスリストを受け取っていません。Process Manager で少なくとも 1 つのプロセスを追加してから、Tracked Processes で Sync Now を選択します。 |
| マシンが Agent Activity Manager に表示されない。 | Monitored Devices でそのマシンの Health Status を確認し、推奨される対処に従います。 |
マシンの ACC ログに couldn't verify asset または x509: certificate signed by unknown authority が表示される。 | エージェントが OpenLM のチェックを検証できません。MID Server とエージェントホストに署名証明書を展開します。 |
| 追跡対象のアプリケーションが Active Processes に表示されない。 | Tracked Processes を開き、アプリケーションが一覧にあることを確認します。ない場合は Sync Now を選択します。Monitored Devices でマシンが Healthy であること、OpenLM で Process Monitoring が有効化されていることも確認します。 |
| アプリケーションのアイドル時間がまったく表示されない。 | Process Manager でそのプロセスの Track Process Idle/Active Periods をオンにします。 |
| Process Manager を編集しても Tracked Processes が変わらない。 | 同期は 1 時間ごとに実行されます。すぐにリストを取得するには Sync Now を選択します。 |
| Egress – Pending/Retry に行がたまる。 | インスタンスから OpenLM に接続できないか、送信レートがマシン数に対して低すぎます。last_error フィールドを確認し、キューが増え続ける場合は x_oplm_openlm_ac_0.egress_batch の値を上げます。 |
HTTP 401 または HTTP 403 で行が Egress – Failed (dead-letter) に入る。 | OpenLM が資格情報を拒否しました。Set Up Connection で再度 Save and Test を実行し、必要に応じて新しい資格情報を作成します。 |
rejected (hard) で行が Egress – Failed (dead-letter) に入る。 | OpenLM が結果の一部を拒否しました。理由は last_response で確認します。TIMESTAMP_OUT_OF_RANGE は、結果が 48 時間より古いか、マシンの時計がずれていることを示します。 |
よくある質問
OpenLM Workstation Agent はまだ必要ですか? いいえ。エージェントが報告する内容に挙げたデータについては、ACC エージェントが Workstation Agent の代わりになります。ライセンスの自動解放が必要なマシンなど、一部のマシンでは引き続き Workstation Agent を実行できます。その場合、それぞれのエージェントが Agent Activity Manager に別の行として表示されます。
追跡する対象はどこで選択しますか? アプリケーションは OpenLM Process Manager で定義します。監視するウェブサイトは Agents Hub で管理します。エージェントが検出したウェブサイトを Discovered Web Services で確認し、監視したいものを Touch Point Event Sources として承認します。
OpenLM は ServiceNow インスタンスの内容を変更しますか? いいえ。OpenLM が ServiceNow のレコードに書き込むことはありません。プラグインは、独自の設定、追跡プロセスのリスト、送信キューを独自のテーブルに保存し、独自の ACC 監視ポリシーを発行します。
自社のデータはほかの顧客のデータと分離されていますか? はい。プラグインからのすべてのリクエストは OpenLM アカウントの資格情報で認証され、OpenLM はその資格情報だけに基づいてデータの帰属先アカウントを判断します。
ドキュメントチームは、大規模言語モデルを使ってこのページを下書きすることがあります。公開前に、テクニカルライターがすべてのページをレビューし、製品と照らし合わせて検証します。最終的な判断は人間が行います。