IRE - ServiceWatch overwrites the "Discovery Source" column when there is no update

Wojciech Werysz
Kilo Guru

Hello,

I noticed that fields in "Discovery Source" are overwritten by ServiceWatch. The real Discovery source were IDS or Excel import.

find_real_file.png

1. I tried to identify one asset and checked the asset class - it was under Hardware. I checked any reconcilation rules in this class and parent classes, but there is none.

  • cmdb_datasource_precedence.list - Is empty.
  • cmdb_datasource_last_update.list - I have only two fields not relevant.
  • cmdb_reconciliation_definition.list - I tried to find the Static Reconcilation Rule for ServiceWatch that overwrites the class hardware, (even if there is no data updated) but I cannot find anything for Hardware or Configuration Item(parent class).
  • cmdb_dynamic_reconciliation_definition.list - The Dynamic Reconcilation Rules list is empty.
  • cmdb_multisource_data.list - I found the item, but it seems to just perform 0 updates, but update the discovery source  anyway.

So basically issue is when I want to filter out data in CI list view for Discovery Source type I cannot do it, because discovery source is overwritten by ServiceWatch, even when 0 updates took place.

So instead of seeing 10 Excel 10 IDS 10 ServiceWatch, I can see only 30 ServiceWatch.

How to fix this issue?

 

Please do not send any links to documentation.

1 ACCEPTED SOLUTION

Not applicable

Discovery Source is a restricted field used by the IRE.  It will change based on the most recent source to discover a CI and is not guaranteed to be the original source that discovered a CI.  I'm guessing in your situation the most recent discovery field is being updated.  This field is also a restricted field used by the IRE.  If this field is being updated then this would be "working as intended" where the discovery source is being updated to the source that most recently discovered the CI.  I am not aware of how you would disable this functionality.  You could create reconiliation rules to prevent a source or sources from updating CIs but I doubt this is what you would want.

What is the use case you are trying to accomplish by filtering based on discovery source?  As mentioned previously, discovery source will change so discovery source isn't a reliable field.

Are you trying to see how many CIs a specific source has reported on?  There is a sys_object_source table you could use to get aggregate counts (assuming the other sources go through the IRE as well).

View solution in original post

1 REPLY 1

Not applicable

Discovery Source is a restricted field used by the IRE.  It will change based on the most recent source to discover a CI and is not guaranteed to be the original source that discovered a CI.  I'm guessing in your situation the most recent discovery field is being updated.  This field is also a restricted field used by the IRE.  If this field is being updated then this would be "working as intended" where the discovery source is being updated to the source that most recently discovered the CI.  I am not aware of how you would disable this functionality.  You could create reconiliation rules to prevent a source or sources from updating CIs but I doubt this is what you would want.

What is the use case you are trying to accomplish by filtering based on discovery source?  As mentioned previously, discovery source will change so discovery source isn't a reliable field.

Are you trying to see how many CIs a specific source has reported on?  There is a sys_object_source table you could use to get aggregate counts (assuming the other sources go through the IRE as well).