When a scanner check matches an AppMap, it issues a finding. A finding includes detailed information about the match, indicating such information as:
ruleIdidentifier of the rule algorithm.
checkIdidentifier of the
check, which a configured instance of a
ruleTitlehuman-friendly title of the rule.
messagehuman-friendly message describing the finding.
appMapFilerelative path to the AppMap file containing the match.
eventJSON object of the primary event on which the match was found.
relatedEventsJSON of other events in the AppMap which are associated with the finding. They can be inspected in the AppMap to better understand the finding.
scopeJSON of the event which defines the AppMap subtree in which the finding was discovered.
hashof the finding which can be used to identify duplicate findings.
hash of the finding is computed from the finding properties that are most important and characteristic. The hash is used implement a critical feature of AppMap Analysis - de-duplication. De-duplication serves two purposes:
1) A finding may occur many times within a set of AppMaps. As a user, you’re only interested in unique findings, therefore the hash can be used to de-duplicate the findings and present a minimal data set. 2) Findings can be managed and triaged in the AppMap Server UI. For example, a finding can be deferred to prevent that finding from holding up a build or pull request. If the finding occurs again in the future, the hash is used to recognize that the finding has already been found, triaged - therefore the finding is not reported as new, and does not block the build or need to be re-triaged.