9.8 Example: Mining Performance Data

The following HierarchyFile example uses a generator statement to create a new element for each unique value in the hostname alarm field, then queries the samples database to mine the average response time from performance data.

<generator field="hostname">
  <param name="Performance.Label" value="Average Performance for {element.name}" />
  <param name="Performance.Metrics" value="Avg. Response Time (ms);Avg. Number of Transactions to {element.name}" />
  <param name="Performance.Database" value="jdbc:db2:ewm" />
  <param name="Performance.User" value="admin" />
  <param name="Performance.Password" value="sesame" />
  <param name="Performance.Query" value="select time,value*1000 ''Avg. Response Time (ms)'',trans ''Avg. Number of Transactions to {element.name}'' from samples where host=''{alarm.hostname}'' and metric=''{alarm.source}'' and time
&gt;= ''{query.from,date,yyyy-MM-dd-HH.mm.ss.000000}'' and time
&lt;= ''{query.to,date,yyyy-MM-dd-HH.mm.ss.000000}'' order by time" />
</generator>

The above example equates to the following SQL query with line breaks added:

select time, value*1000 ''Avg. Response Time (ms)'', trans ''Avg. Number of Transactions to {element.name}'' from samples where host=''{alarm.hostname}'' and metric=''{alarm.source}'' and time &gt;= ''{query.from,date,yyyy-MM-dd-HH.mm.ss.000000}'' and time &lt;= ''{query.to,date,yyyy-MM-dd-HH.mm.ss.000000}'' order by time