Logic Module 'not in use'
I have a couple of Logic Modules on the list that I'd like to use to begin monitoring MySQL. The modules I want to use are all marked in the list as 'Not in use'. What do I need to do to fire them up so I can begin using them?
Michael Oehlert
Posted 1 year ago·Last reply 1 year ago
12 comments
Michael Oehlert
OP1 year agoI have that module but it is 'Not in use'. And nothing shows up in the Applies to list when I play it. Is there something we missed when we originally set up LM?
Mike Moniz
·1 year agoHave you gone thru the LMCloud setup for monitoring Azure? See https://www.logicmonitor.com/support/lm-cloud/getting-started-lm-cloud/adding-microsoft-azure-cloud-monitoring
I would expect that would automatically detect and monitor that server, and use modules like Microsoft_Azure_MySQLFlexible.
Mike Moniz
·1 year agoLogicMonitor works a little different than some other monitoring systems. Instead of assigning checks to your devices, LM will run thru the checks (datasources) and apply/assign devices to the checks. So kinda backwards from other systems.
"Not in use" just means there are no devices applied to that check. If you edit the module you can use "Show associated devices" to see what devices are applied to a check, if any.
Michael Oehlert
OP1 year agoSo digging deeper I've discovered that the MySQL instance we want to monitor isn't a locally installed version. It's actually Azure Database for MySQL Flexible Server. How do I get LM to monitor that?
Rob Sapsford
·1 year agoMike_Moniz
This is relevant today for me, and I'm not questioning your knowledge I want to verify something.
You said:
"LM will run thru the checks (datasources) and apply/assign devices to the checks. So kinda backwards from other systems."
LM does use the logic in the AppliesTo to determine whether the datasource should be applied and instances discovered, correct? What I mean is that if I take a datasource that is an Active Discovery datasource and set the AppliesTo to false, it won't even be checked. Do I have that wrong?
Just clarifying for my knowledge.
Mike Moniz
·1 year agoThat is correct, it will not even run the rest of the DataSource as I understand it. But not only that... it will DELETE all history of that check on all devices that it was applied to. For example if you took the Ping- DataSource, made the Appliesto "false()", and saved it. Not only will all PING checks go away, all past history of that check: graphs, raw data, etc. going back to the beginning for ALL devices will be GONE. You would need to ask support to roll back the whole portal (which will lose all the most recent data I believe) to recover from that. So play in a sandbox and be careful :)
For Active Discovery, for a check to apply it first needs to be applied by the AppliesTo, but then it also need to have instances discovered by Active Discovery. So for these you kinda have 2 different conditions before that check rally applies.
Rob Sapsford
·1 year agoMike_Moniz
Thanks. I think I misread your first post.
Michael Oehlert
OP1 year agoSO as far as Modules going from 'Not in use' to 'in use; you're saying that if LM senses that there is a need for what a module monitors...it will switch that module to 'in use' automatically?
Mike Moniz
·1 year agopretty much, yeap!
Mike Moniz
·1 year agoSo Azure monitoring works differently as it uses LMCloud. This is where LM will use their own collectors to communicate with Azure APIs. I'm assuming you just installed MySQL within an general Azure VM? In that case I would treat MySQL the same way you would if it was running in on your own server. Kinda pretend your Azure VM is just a hosted server at some generic colo. Setup a Collector server in Azure, if you don't already have one, then follow the generic Oracle MySQL directions I linked before.
Michael Oehlert
OP1 year agoThank you! This is very helpful. The module I'm trying to use is Microsoft Azure MySQL....but the VMs I want to monitor MySQL on have it locally....not thru Azure. So then I think my problem is that the module is looking for Azure MySQL [ hasCategory("Azure/MySQL") ]. How do I get it to 'see' MySQL locally on the VM and monitor that?
Mike Moniz
·1 year agoWhen you first want to start monitoring something specific, I would check the LM support page to see if they have specific instructions on how to monitor it. For MySQL they have a page on https://www.logicmonitor.com/support/monitoring/applications-databases/mysql-monitoring which covers what requirements you need to meet for that monitoring. For example setting jdbc.mysql.user and jdbc.mysql.pass along with setting up permissions.
To be more general, when a module is listed as "not in use" it means that the AppliesTo statement doesn't apply to any devices you have. If you go into the AppliesTo section of the module, you can see what the statement is and it has a little play button to test what devices matches it.
For example looking at "Oracle_MySQL_Databases" shows the AppliesTo of 'hasCategory("MySQL")' which means the devices need to have MySQL within the system.categories property. This value would be set by the PropertySource "addCategory_OracleMySQL" which it will attempt to communicate with the device to determine if MySQL is running on it. If it does it would add the MySQL value to the system.categories.