Often times it is important to be able to understand the relationships between resources monitored by New Relic. Using New Relic Insights, Blue Medora plugins provide for this added functionality via a table called “blue_medora_relationships”. This table contains relationships between various resources so that you can gain understanding of things like “which databases are on this SQL server” or “what datastores does this virtual machine use”?
Blue Medora has solved this problem by writing relationship data out to a New Relic Insights table called “blue_medora_relationships”. In this table, we provide all of the data necessary to determine the relationship from one resource to another. Key values in this table that provide relationship data are: resource_type, resource_name, fq_resource_type, related_type, related_name, and fq_related_type. With these key values, we can run queries such as:
SELECT resource_name, related_name FROM blue_medora_relationships
WHERE fq_resource_type='mysql_database' and fq_related_type='mysql_table'
Which will give us a listing of all MySQL instances and the databases they are hosting.
As we select an instance, we are brought into a database dashboard where we can see all of the key performance indicators for our database. Note that at the top we can see the parent resource instance from which we navigated.
Figure 3: A database dashboard seen after selecting a MySQL instance.
As you can see, having these relationships in place allow us to create some interesting data visualizations. In future releases of the Blue Medora New Relic Plugins, we plant to improve the relationships further with cross-plugin relationships (for example, wouldn’t it be great to see the performance of an underlying EMC VNX volume from a vSphere Datastore?) as well as relationships from APM transactions.