Using dynamic entity rule configurations
You often add or remove entities from your configuration. These changes take time and effort to manually reconfigure your entity filter rules, and the process can introduce errors. You want a rule configuration that updates immediately and without the need for service configuration changes.
This article is part of the Definitive Guide to Best Practices for IT Service Intelligence. ITSI administrators will benefit from adopting this practice as they work on Service Insights.
Solution
Dynamic entity rule configuration ensures that KPI results remain accurate as entities come online and go offline.
When you configure ITSI entities, you use the metadata shown in this table.
Title | Alias fields | Informational fields | Entity type |
---|---|---|---|
The most human-friendly name for the entity | The other field names and values that uniquely describe this entity | Metadata field names and values that further describe this entity. These fields are optional. | Useful classification of this entity that allows it to be grouped with others. This field is optional. |
Keep it simple and intuitive, and watch out for accidental duplication. For example, you might choose hostname over FQDN. |
This value should always match a unique field within the raw data that powers the KPIs. Some examples are the Be careful not to use this as an informational field. Also, this is not a compound field. |
This information can be useful for entity filtering logic and entity enrichment. Some examples are: |
Each entity can be assigned a zero-to-many entity type that drives directed troubleshooting. Some examples are: Windows Host , AWS Instance , and VSphere VM . |
Dynamic entity matching uses these metadata fields. To take advantage of dynamic entity matching, use wild cards to bring in new entities. This is especially useful for the title and alias fields, which are unique. The example below shows a wild card for the alias match, but you can use a wild card in any of the fields. On informational fields or entity types, you can already get a one-to-many match without a wild card because many entities can share those values.
What you don't want to do is hard code a title or alias value. The example below specifically defines webserver-02 and webserver-04. So, if you wanted to retire webserver-04 or add new webserver-05, this rule won't update dynamically. You would have to manually update ITSI to make that change.
Additionally, do not embed your entity filtering logic within your KPI search, as shown in the following screenshot. This is a static configuration, not a dynamic one.
Let's use a hypothetical search from data stored in the main index to see how ITSI KPIs utilize dynamic entity inclusion rules to filter results in KPIs.
- First, add
index=main
.
- Next, let's add the entities for the service using wild card matching. With the
plnxweb*
value, we get three matches, shown below.
- For each matching entity, ITSI automatically obtains the entity's alias value to use when filtering results from the main index. In this example, the specified entity filter field and value are
host
=plnxweb01
.
When you've done this, ITSI automatically appends a subsearch to the original KPI search to restrict KPI results to entities in this service. The subsearch drives the filtering logic.
While right now, the search would look for search host="plnxweb01" OR host="plnxweb02" OR host="plnxweb03"
, in the future, if more plnxweb
hosts are added, they would be dynamically added to the search.
Next steps
You might also be interested in the following Splunk resources:
- Splunk Docs: Service insights manual