Search the Community

Showing results for tags 'datasource'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • LogicModule Exchange
    • LM Exchange
    • LM Staff Contributions
  • Product Announcements
    • LogicMonitor Notices
  • LogicMonitor Product Q&A
    • Feature Requests
    • Ask the Community
    • From the Front

Found 29 results

  1. I'm trying to clean up datasources that are in our account that do not have any instances associated with them and likely never will. Currently I have to do this manually by inspecting each datasource in the GUI. It would be really great if the datasource instance count was returned as a property. Even better would be if the instances and associated device ID's were returned as well, but for now I'd be happy with just the device/instance counts.
  2. Ad-hoc script running

    Often when an alert pops up, I find myself running some very common troubleshooting/helpful tools to quickly gather more info. It would be nice to get that info quickly and easily without having to go to other tools when an alert occurs. For example - right now, when we get a high cpu alert the first thing I do is run pslist -s \\computername (PSTools are so awesome) and psloggedon \\computername to see who's logged in at the moment. I know it's possible to create a datasource to discover all active processes, and retrieve CPU/memory/disk metrics specific to a given process, but processes on a given server might change pretty frequently so you'd have to run active discovery frequently. It just doesn't seem like the best way and most of the time I don't care what's running on the server and only need to know "in the moment." A way to run a script via a button for a given datasource would be a really cool feature. Maybe on the datasource you could add a feature to hold a "gather additional data" or meta-data script, the script could then be invoked manually on an alert or datasource instance. IE when an alert occurs, you can click on a button in the alert called "gather additional data" or something which would run the script and produce a small box or window with the output. The ability to run periodically (every 15 seconds or 5 minutes, etc) would also be useful. This would also give a NOC the ability to troubleshoot a bit more or provide some additional context around an alert without everyone having to know a bunch of tools or have administrative access to a server.
  3. The concept of OpsNotes is growing on me. What would really make it shine would be a Groovy helper class/client that can insert an OpsNote from within a Datasource definition for the device context without resorting to using the REST API. Use Case-- we have a datasource for SQL Servers to count the number of blocking sessions on a per database basis. The DBAs want a way to capture some of the session metadata with this metric. OpsNotes seem like a potential way of capturing this.
  4. Code is TXL3W9 This DataSource provides instances for each of the Network adapters, including the following Instance Level Properties: auto.TcpWindowSize auto.MTU auto.MACAddress auto.IPSubnet auto.IPAddress auto.DNSHostName auto.DNSDomain auto.DefaultIPGateway auto.SettingID auto.Description
  5. I will explain the request here as best I can in a written format but a visual would be simple. By example of FortiGate: We had a requirement to monitor the WAPs (the FortiGate can act as a Wireless LAN Controller (WLC) ) for reporting and performance. Depending upon the size of the firewall 1 through N WAPs can be authorized, configured, and monitored. These devices are visible through SNMP queries against the firewall and offer a rich set of information (CPU, memory, version, SN, model, client associations). Now to the feature - when we added the capabilities it became time consuming to first identify the OID and then repeatedly poll to pin down the elements. So, how about a "button" in the UI next to the OID to walk or poll and display the results? Additionally, how about offering the results and on that page an option to add them in this datasource? Look at the Forti AP definition for what we did and try to visualize the simplicity of having the UI trigger a poll on a device (through the associated collector) to make this a breeze.
  6. When cloning an existing datasource and changing the type from one type to another similar type, all of the datapoints immediately disappear. I am overhauling some of my script and webpage datasources where the output is json or key-value pair into batchscript. As soon as I change the collection type, the datapoints immediately disappear and it's like I'm starting from scratch. The script auto-discovery and collection panes also get wiped out. Unfortunately this has translated into me spending a lot of time recreating datapoints instead of modifying existing ones. I understand why those datapoints are not compatible with SNMP or CIM collection methods, but they should largely be transferable between certain datasources. On the bright side - this has forced me to start overhauling my datasources by exporting and importing the XML files. Still, it would be great if the GUI could play nice for some of us power users.
  7. Please add a test function for JDBC active discovery and colelction, just as you have done for scriped DataSources.
  8. CDP Neighbors DataSource

    CDP Neighbors DataSource with Instance Level Properties 3TJN72
  9. After Marketo's large outage due domain registration expiring, we created a DataSource that monitors the amount of time remaining on a registered domain. Locator ID: HCZPGR
  10. DataSource to monitor summary metrics across all Harvest Projects ( LM Locator: 6MZ3HE
  11. DataSource - GHIN_Handicap

    Golf enthusiasts! Here's a DataSource to monitor Handicap Indexes over time. LM Locator: 6FDZRJ
  12. DataSource to discover and monitor Harvest Projects ( LM Locator: HYXHWP
  13. Tesla Motors LogicModule Suite

    I previously published a datasource for Tesla Motors Battery Statistics - which presents compelling vehicle battery and charging information that is fetched from the Tesla REST API. To complement those efforts, I've written a few other Tesla Motors LogicModules that return a variety of different, but still interesting, datapoints - including a ConfigSource that displays configuration information about the vehicle itself (are the doors locked? Is the sunroof open?) The following is a list of all the Tesla Motors LogicModules now available (see the above-linked post for additional info on how this all works.) DataSource 'Battery Statistics' tracks battery and charger performance and health metrics (previously posted to the Exchange but included here for sake of keeping everything together.) The datasource name is TeslaMotors_BatteryStatistics and has lmLocator DXLLKY. DataSource 'Climate Statistics' tracks inside and outside temperatures, as well as driver and passenger temperature settings. The datasource name is TeslaMotors_ClimateStatistics and has lmLocator YZRWXC. ConfigSource 'Car Configuration' collects textual configuration data, cleans it up and makes it easily readable (screenshot attached.) The configsource name is TeslaMotors_Configuration and has lmLocator GRY9AE. DataSource 'Location Data' tracks compass heading, latitude and longitude, and power. The datasource name is TeslaMotors_LocationData and has lmLocator AYWYWA. DataSource 'Odometer Reading' does exactly what you might expect. The datasource name is TeslaMotors_BatteryStatistics and has lmLocator HHJRDJ.
  14. When updating datasources from the repository, there should be an easy way to maintain your existing AppliesTo and alert threshold settings.
  15. The datasource tokens ##DataSource## and ##INSTANCE## do not allow for enough granularity. For example, if I want to the an alert to state that it is a "Citrix Services" alert, I cannot just use the ##DataSource## token as this will also include the Instance name, which may be long and confusing such as "WinCitrixServices-Citrix Independent Management Architecture". A ##DataSourceDisplayName## or similar token would resolve this, the name is stored by LM as dataSourceDisplayName. This token is what I am requesting. With the current setup, ##DataSource## equals Datasource.dataSourceName + instance.DisplayName And ##INSTANCE## equals instance.Name Thank You, John
  16. Currency Monitoring

    I cooked up a currency converter for travel a while back. You can add currency pairs as instances and keep an eye on when to buy your holiday money! Data is from the Yahoo Public Finance API (and is often delayed) so I'd advise against using it for Forex! General usage information is in the Technical Notes section of the datasource. LogicModule Locator : FHHPJG
  17. When updating DataSources we lose customization of some attributes. Of course, we could clone and rename, but then we lose out on updates. What I would like is to be able to preserve a subset of the attributes, namely thresholds for alerting and the custom alert subject and message body.
  18. How do we monitor our DataSources? One of our customers asked an interesting and challenging question. He would like to know how he can track and alert changes to his customised DataSources. Well, there was no straightforward way, not until recently. This is made possible with the recent release of the ConfigSource add-on module and the publishing of the dataSource REST API. At a high-level, we can create a Groovy script ConfigSource which makes a REST API call to export a targeted DataSource to XML format, store and check for changes to the XML in ConfigSource, then send an alert when there is a change. Creating the ConfigSource:- 1. Create REST API token 2. Create an embedded groovy script ConfigSource with the following information:- Name : DS_XML Display Name : DS_XML Applies To : This ConfigSource can be applied to any device Collect Every : Up to your company policy, minimum 1 hour Multi-instance? : Check this option Enable Active Discovery : Uncheck this option Collector Attributes : Select Embedded Groovy Script Groovy Script : [... Attached Below ...] Config Check : Select Any Change (Check For: option) 3. Save the ConfigSource import org.apache.http.HttpEntity import org.apache.http.client.methods.CloseableHttpResponse import org.apache.http.client.methods.HttpGet import org.apache.http.impl.client.CloseableHttpClient import org.apache.http.impl.client.HttpClients import org.apache.http.util.EntityUtils import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import org.apache.commons.codec.binary.Hex; //define credentials and url def accessId =hostProps.get(""); def accessKey = hostProps.get("api.access.key"); def account =hostProps.get("api.account"); def resourcePath ="/setting/datasources/##WILDVALUE##"; def url = "https://" + account + "" + "/santaba/rest" + resourcePath + "?format=xml"; // get current time epoch = System.currentTimeMillis(); //calculate signature requestVars = "GET" + epoch + resourcePath; hmac = Mac.getInstance("HmacSHA256"); secret = new SecretKeySpec(accessKey.getBytes(), "HmacSHA256"); hmac.init(secret); hmac_signed = Hex.encodeHexString(hmac.doFinal(requestVars.getBytes())); signature = hmac_signed.bytes.encodeBase64(); // HTTP Get CloseableHttpClient httpclient = HttpClients.createDefault(); httpGet = new HttpGet(url); httpGet.addHeader("Authorization" , "LMv1 " + accessId + ":" + signature + ":" + epoch); response = httpclient.execute(httpGet); responseBody = EntityUtils.toString(response.getEntity()); code = response.getStatusLine().getStatusCode(); println responseBody httpclient.close(); 4. Go to the device where the ConfigSource is applied to, define the following device properties :- : < API Token Access Id > api.access.key : < API Token Access Key > api.account : < LM Account > Adding ConfigSource Instances 1. Identify the DataSource id. You can find it in the UI by looking at the URL of the DataSource definition 2. Add ConfigSource instances by selecting 'Add Monitored Instance' from the Manage Dropdown next to the manage button for the device Name : < DataSource Name > Wildcard value : < DataSource Id > DataSource : DS_XML 3. Repeat above step 1 and 2 to add more datasource instances. Point to Note: 1. To execute a ConfigSource, you will need a minimum collector version of 22.110 2. One Datasource Id per instance 3. Differences in DataSource are viewed in XML format 4. Previous DataSource version can be restored by downloading and importing the previously compared XML from the ConfigSource history 5. Thanks and credits to David Lee (Our Jedi Master) for enhancing the original concept to a more user-friendly multi-instances ConfigSource. Screenshots of the ConfigSource result:
  19. I have a number of datasources that apply to devices that have a property assigned to them... Previously my custom properties would be in the autocomplete list when adding a property to a device. I would only have to put the first few characters of my properties (they all follow the same naming convention) and select it. This functionality has recently disappeared and the only properties listed appear to be from LM supplied datasources.
  20. Please add native support for discovery of ECS metrics by ClusterName AND ServiceName dimensions!
  21. Clear an alert with a NaN value

    I recently wrote a datasource that pulled an API and alerted when the return value was greater than 0 The problem I ran into is the API never returned a 0, instead it would return NaN. I worked around this issue by using Key = Value datapoints and a "if (strv.isEmpty) {" statement. Basically, if their is a value returned the output in the script will be "events=[returned value]" the same as most key=value datapoints. If the returned value is empty, the script will fill out the entire string returning "events=0" which puts a 0 in the datapoint and allows the alert to clear. This a nice workaround for a LogicMonitor Admin's bag of tricks. //Print KeyValue strv = response_obj['results']['2']; if ( strv.isEmpty() ) { println "events=0" } else { println "events=" + strv; } return(0);
  22. Singapore is an island nation located in Southeast Asia and also home of LogicMonitor Asia office. Singapore while it is relatively small in sizes and population, it is strategically located blooming South East Asian market. Singapore is well known as country with good infrastructure, modern government and multi cultural background. One good example of this is Singapore government have been publishing various information such as Economics, Society, Health, Environment and other data publicly through their own website ( Example of published data include Singapore population, Birth Rate, GDP data, government expenditure, and even environmental related data. Some example of environmental related data that we can retrieved are Temperature, PSI Reading, and rainfall reading. Here is an example of PM2.5 data which is formatted in JSON. We can make a LogicMonitor datasource based on this which can monitor air quality in Singapore. These information can be retrieved using HTTP request and supplying API key as part of HTTP headers. The response data can be divided into two parts, the first part mainly listed down regions and second part of the response is the actual air quality data. We can use Groovy script for Active Discovery to parse each region and listed it as an individual instance in LogicMonitor. Here is the sample of Active Discovery script What this script will do is to send http request to and look for region name in the response body and print region name to this format instance1_id##instance1_name. After all instances are defined we can use regular HTTP data collection method to properly collect relevant data and displayed them in LogicMonitor. Here is data collection part of this datasource This is how it looks like on LogicMonitor when data is being collected and from here we can easily create graphs which can be use to show history of Singapore air quality On top of PM2.5 reading, we can also create another datasource that show PSI reading and current temperatures. We can clone this datasource and make some modification to match with http output for PM2.5 and Temperature. The next logical step would be to create a dashboard that can show all these information at glance which would look great if we show it on large screen such as TV in the meeting room. This would be useful especially during hazy season where air quality can go up to dangerous level from time to time. Here is an example of how we display these information on large screen using dashboard We can also use the same datasource to create an alert when air quality drops to unhealthy range and then deliver to our HipChat room. This is just an example of how LogicMonitor can monitor more than just IT infrastructure. In our case this will help us decide where we should go for lunch and whether we should bring our N95 masks along.
  23. Hi everyone, I'm trying to get some results off a Simplivity system using power shell and json. I have the powershelgl working as I would expect, but I can't get the results to show up in LogicMonitor. In collector debug, I see this when running the script. >!posh returns 0 output: [ { "id": "53466cdf-ee82-435e-8619-334b3a3e7583", "name": "Fakename", "type": "OMNISTACK", "members": [ "4230cce1-f672-e708-0ed6-3310d6db8222", "4230e3c6-4cf6-7228-fc86-cbce8cfa4af7", "564dcac8-b774-c644-cb22-e63acfd07cb9" ], "arbiter_connected": true, "arbiter_address": "", "stored_compressed_data": 731283120128, "compression_ratio": "1.8 : 1", "deduplication_ratio": "300.9 : 1", "free_space": 14779864866201, "capacity_savings": 387454100800512, "efficiency_ratio": "530.8 : 1", "local_backup_capacity": 385825262157824, "used_logical_capacity": 388185382895616, "remote_backup_capacity": 0, "allocated_capacity": 15511146961305, "stored_virtual_machine_data": 2360120737792, "stored_uncompressed_data": 1290225192960, "used_capacity": 731282095104 } ] I've attached example of what I've tried for output. Nothing is showing up.
  24. No data threshold

    Hi, I love the idea behind the "no data" warning, but it's missing one thing that I think would help make it a little more friendly. We have a few devices that have spotty collection reliability, and it often times leads to use seeing "no data" warnings blowing up in our alerts console for a few minutes and then disappearing. I'd really love to see an option similar to what exists with the actual data points, that is, only show a "no data" if there's "x" consecutive polls of no data. This would prevent the times where we might miss two polls in a row from flooding the alerts.
  25. I have found the new "Test" button on the Datasources' LogicModule setup pages to be invaluable for testing which hosts are associated with my "Applies to" filter. I can make a change to the filter and then get instant feedback, pointing out typographical errors, mispellings, or even possibly that I got it correct! This will be equally valuable for the Eventsources LogicModule setup pages.