This is Darren Mallette. I'm a Foglight Solutions Architect specializing in database and virtualization technologies at Quest Software. I often get asked by customers how to specify different thresholds on the rules for different "things" that Foglight monitors. The "things" are properly known as topology objects and include "datafile io activity", "invalid objects" and "tablespaces". A common request is how to specify different thresholds for the "tablespace full" rule for different tablespaces. In this 3-part series, I'm going to show you how to find the threshold in the first place, modify the threshold manually for a specific tablespace, and then for the grand finale, show you how to script and automate this process.
In order to modify the threshold, we need to figure out where it is used and what it is called. We can use the "Manage Rules" dashboard to find out where the threshold is used. We know that it's going to be used in a rule - we just need to determine which one(s). We can start by navigating to Administration -> Rules & Notifications -> Manage Rules. (Note that you need to be a Foglight Administrator to do this.) Filter the rules by something that is known. In this case, I entered "DB_Ora" in the Cartridge Name field to just show the rules for the Oracle cartridge. Next, sort by Rule Scope and scroll until you find what you're looking for. There is only 1 rule scoped to "DBO_Tablespace" so we now know what rule to look at. We can click on the rule "DBO - Tablespace Used Pct" to look at the details and find out the threshold that is being used.
We see that this is a multi-severity rule and that the "Fatal" condition is not active. Expanding on the Critical and Warning sections will show us the condition and ultimately the threshold that is used.
What we are interested in is the value in the "registry" function lookup. This tells us that a Foglight registry variable is being used to store the actual threshold value.
We can see that for the critical condition, it is "DBO_TablespaceStorage-AllocatedUsedPct_Medium" and for the warning condition it is "DBO_TablespaceStorage-AllocatedUsedPct_Low".
In the next part of this blog series, we are going to find those values, and "scope" the variable to a different value for a specific tablespace. Stay tuned! (Update: Part 2 is available here)