CIテーブルの最新検出日(last_discovered)が更新されない

m51D
Tera Contributor

CIテーブルの最新検出日 (last_discovered) フィールドが更新されない事象が発生しています。

最新検出日についてDocsでは以下のように記載されています。

CI が最後に検出されたときのタイムスタンプです。IRE は、他の CI 属性が更新されていない場合でも、ペイロード処理中に CI の last_discovereddiscovery_source の属性を常に更新します

私たちの環境では、IntegrationHub ETLを使ってインポート定義を作成し、データソースに添付したcsvファイルをCIにマッピングするようにしています。取り込みは問題なく動作しているのですが、インポート時に属性に変更がなかったCIの最新検出日が更新されません。

この問題により、一定期間検出されていないCI(ある時点からCSVファイルに含まれなくなったCI)を特定することが困難になっており、古いCIを削除することができません。

glide.cmdb.logger.source.identification_engine プロパティをdebugVerboseにしてデバッグをすると、システムログには以下のメッセージが出力されます。

identification_engine : logId:[xxxxxxxxxxxxxx] Commit: NO_CHANGE cmdb_ci_spkg : xxxxxxxxxxxxxx

以下のプロパティはどちらも登録していません。

  • glide.identification_engine.skip_updating_source_last_discovered_if_older
  • glide.identification_engine.ire_message_listener_skip_updating_source_last_discovered_to_now 

Communityの投稿も探してみたのですが有効な情報を見つけられませんでした。何か情報をお持ちの方がいらっしゃいましたら、教えてください。

1 ACCEPTED SOLUTION

iwai
Giga Sage

IntegrationHub ETLのデモデータ ”IH-ETL-DemoData-ExistingETLMap” をTest 実行してCIの値に変更がなかった CI の last_discovered が どのように更新されるのか確認してみました。Test方法はインポート後の状態と全く同じCIをあらかじめ設定しておいて実行しました。実行はメニューのConfiguration>IntegrationHubETLを使って「Test and Rollback Integration Results」を実行しています。プロパティ―も確認してどちらも登録されていないことを確認しました。

ログを確認して正しくNO_CHANGEとなった後も、最新検出日 (last_discovered) は更新されました。

何か他の要因や、同じ状況にするための再現方法は何かあるでしょうか。

View solution in original post

2 REPLIES 2

iwai
Giga Sage

IntegrationHub ETLのデモデータ ”IH-ETL-DemoData-ExistingETLMap” をTest 実行してCIの値に変更がなかった CI の last_discovered が どのように更新されるのか確認してみました。Test方法はインポート後の状態と全く同じCIをあらかじめ設定しておいて実行しました。実行はメニューのConfiguration>IntegrationHubETLを使って「Test and Rollback Integration Results」を実行しています。プロパティ―も確認してどちらも登録されていないことを確認しました。

ログを確認して正しくNO_CHANGEとなった後も、最新検出日 (last_discovered) は更新されました。

何か他の要因や、同じ状況にするための再現方法は何かあるでしょうか。

m51D
Tera Contributor

ありがとうございます。大変参考になります。

iwaiさんの再現テストでは最新検出日 (last_discovered) は更新されたのですね。

「Test and Rollback Integration Results」で確認をしている点はこちらも同様ですので、何等か問題がある可能性もでてきましたので、Now Supoprtに問い合わせてみます。