Science and engineering types like to know things.  Knowing feels good, even when it lacks practical application.  It feels even better when it is practical.  With this axiom in mind, this post will explain Orion APM’s Application Discovery process. 

 

In the discovery wizard, you select a group of servers first:

 

image

 

Next, you select a set of application templates

 

image

 

 

 

With the servers and application templates chosen, you provide a set of credentials that should work on the target servers.  I guess you could try credentials that you don’t expect to work, but that seems pointless.  Still, to each his own.

 

 

 

image

 

 

 

APM takes these three sets of data and conducts its discovery.  It considers each server in turn.  It will take the first server, the first set of credentials and the first application template and test the template against this server to see if there is a match.  What determines whether there is a match?   Under Advanced Scan Settings, there are four settings

 

image

 

Minimal Match = at least 1 component in the template works on the target node

 

 

 

image

 

Partial Match = at least 35 percent of the components in the templates work on the target node

 

 

 

image

 

Strong Match = at least 65 percent of the components in the templates work on the target node

 

 

 

image

 

Exact Match = all of the components in the templates work on the target node

 

To be complete, we compute percentage as (number of successful components)/(total number of components), where success is a component in the Up, Warning, or Critical states.

 

 

 

Here’s the full discovery process as a flowchart:

 

 

 

app discovery workflow

 

 

 

So what can you do with this info?  One takeaway is that the discovery process is serial.  If you pick a large number of servers, a larger number of application templates, and a lot of different credentials, the process will take unnecessarily long.  Use Domain Admin credentials, or similarly broad credentials, if you have them.  Furthermore, break your servers into groups such as Windows, Linux, Unix.  Break them down further if you have have naming schemes that tell you which servers are running apps such as Exchange.  There are different Exchange templates for different roles, and the discovery process will automatically sort that out.

 

That’s a fairly complete explanation of how the application discovery process works, but please post questions if there’s more you want to know.