"Edwin AI will be 100x faster than a human and able to manage complex problems."
"Edwin AI is not another AI tool, but an essential part of our IT team."
"Edwin AI cut noise by 90% & ITSM incidents by 76%, enabling better customer service."
"Edwin AI delivered value within an hour of implementation."
Request your demo
"Edwin AI will be 100x faster than a human and able to manage complex problems."
"Edwin AI is not another AI tool, but an essential part of our IT team."
"Edwin AI cut noise by 90% & ITSM incidents by 76%, enabling better customer service."
"Edwin AI delivered value within an hour of implementation."
0%
average alert noise reduction
0%
ITSM incident reduction
0%
MTTR reduction
0%
operationsl efficiency improvement
Disclaimer: The LM Uptime is currently in Beta. To be a Beta participant, contact Customer Success.
You can add properties to your websites to facilitate organization, customize alert message templates, and set authentication credentials. Properties can be assigned at multiple levels, such as resource group, instance, or root group (account-wide), and are visible on the Info tab. You can add properties when first creating the website or at a later time.
Different Levels for Enabling Uptime Properties
Before you assign properties to your websites, it is important to determine the appropriate level at which to assign them. The following are the different levels for enabling Uptime properties:
Instance level—Applies to a single instance on a single resource, multiple instances on a single resource, or all instances on a single resource
Root account level—Cascades down to all instances for all resources in the account (company) level
Resource group level—Cascades down to all instances for all resources in the resource group (and its subgroups)
Requirements for Adding Uptime Properties
To add Uptime properties, you must tokenize the username and password by adding a double hash “##” before and after the username and password. For example, ##testusername## and ##testpassword##.
Adding Uptime Property
In LogicMonitor, navigate to Resource Tree > select the required web check or ping check.
Select the Info tab and then Manage Properties.
In the Properties settings, add a property name and value.
Note: You can edit existing properties by directly editing the Value field.
Select Save.
Disclaimer: The LM Uptime is currently in Beta. To be a Beta participant, contact Customer Success.
You can manage the different Web and Ping checks for your website. Managing LM Uptime consists of editing, deleting, clone, and exporting a website. You can export a website as a JSON file for sharing or versioning purposes.
In LogicMonitor, navigate to Resource Tree > select the required Web or Ping Check.
Select Manage.
Select Delete.
Cloning LM Uptime Resource
In LogicMonitor, navigate to Resource Tree > select the required Web or Ping Check.
Select Manage.
Select Clone. The workflow to add a new LM Uptime resource commences.
Exporting LM Uptime Resource
In LogicMonitor, navigate to Resource Tree > select the required Web or Ping Check.
Select Manage.
Select Export to export the website details in JSON format. A dialog displays confirming all fields that will be exported, excluding scripted fields in scripted Web Checks.
Select Confirm Export.
Disclaimer: The LM Uptime is currently in Beta. To be a Beta participant, contact Customer Success.
You can configure default checkpoint and alert settings for your websites using settings directly in your LogicMonitor portal. These settings are pre-populated by default and can be modified to meet your requirements. Because they are centrally located, you can update and apply them to your Web or Ping checks. For example, you create two web checks named Website A and Website B. You can apply the default Uptime settings configured here to both the web checks.
Requirements for Adding Default Uptime Settings
To add default uptime settings, you need a LogicMonitor user with the “Manage” permission set for Uptime. For more information, see LogicMonitor Roles.
Adding Default Uptime Settings
In LogicMonitor, navigate to Settings > Uptime.
In the Checkpoints section, do the following:
In the Uptime check time interval dropdown menu, select how often the designated checkpoints should check the website.
Based on your requirements, select the Website Checks or Internal Website Checks tab, and select the required options.
Note: LogicMonitor hosts five geographically dispersed checkpoints for Website Checks, from which the check can be sent. All the checkpoint locations are selected by default.
In the Alert Triggering section, for Ping Checks, select the percentage of packets that must be returned and the designated time period (milliseconds) for the check to be deemed successful in Check whether (X)% of those packets are returned in (X) ms field. Packets are sent one by one, with a delay of 250 milliseconds between each packet. For example, if you leave the default of five packets in the Number of Packets to Send field, it takes 1000 milliseconds (1 second) to deliver all five packets.
Note: The Check whether (X)% of those packets are returned in (X) ms and Number of Packets to Send fields operate independently of each other. If either criterion is not met, the check is considered a failed check. For example, any returned packet takes longer than the minimum allowed return time or the number of packets returned is less than the minimum percentage threshold.
In the Alert Triggering section, for Web Checks, do the following:
In the The total download time must be less than X milliseconds field, specify the number of milliseconds in which the website must load.
Select the number of consecutive checks that must fail for an alert to be triggered from the After X failed checks dropdown menu. You can select the location and severity of multiple or one selected alert.
In the SSL Alerts section, do the following:
Toggle on the Alerts on SSL Errors switch to trigger alerts if a certificate experiences issues like unsupported algorithms, an untrusted or incomplete certificate chain, CName and HostName mismatch, or an expired certificate.
(Optional) Toggle on the Halt on SSL Errors switch to stop the Web Check and send an alert accordingly if any issues are encountered. This switch displays only when you enable the Alert on SSL Errors switch.
Toggle on the Alert on Certificate Expiration switch and enter the number of days in advance of expiration for which you would like to receive a corresponding alert for each severity level.
Select Save.
You can use LogicMonitor REST API v3 to get cost optimization recommendations details. You must authenticate yourself before making the API request.
Getting a List of Recommendations
The recommendations list includes details about the cloud provider, associated resources, recommendation specifics, and so on. You can use the following query parameters to control the content and format of the response.
URI: GET/cost-optimization/recommendations
Parameters
Type
Description
fields
String
The response is filtered to include only the specified fields for each object. You can provide a list of properties separated by a comma (,).
Indicates the number of recommendations to return in the response. A maximum of 500 results can be requested in a GET call. A default page size of 50 is used if this parameter is not specified.
The response is filtered according to the operator and specified value that is, filter=property:value
Filtering is supported only for the recommendationCategory and recommendationStatus fields.
The recommendationCategory field supports only a single value at a time. To get a list of available recommendation categories, use the GET /cost-optimization/recommendations/categories endpoint.
Only the Equals (:) operator is available when filtering using the recommendationStatus and recommendationCategory fields.
The following example displays how an API request in Python script returns a list of recommendations in the api.logicmonitor.com portal, where the result is filtered based on recommendationStatus set to "ACTIVE".
#!/bin/env python
import requests
import json
import hashlib
import base64
import time
import hmac
import getpass
#Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
#Note: The below is provided for illustration purposes only.
AccessId = getpass.getpass("Enter your AccessId: ")
AccessKey = getpass.getpass("Enter your AccessKey: ")
Company = 'apiAccount'
#Request Info
httpVerb ='GET'
resourcePath = '/cost-optimization/recommendations'
queryParams = '?filter=recommendationStatus:"ACTIVE"&size=5'
data = ''
#Construct URL
url = 'https://'+ Company +'.logicmonitor.com/santaba/rest' + resourcePath +queryParams
#Get current time in milliseconds
epoch = str(int(time.time() * 1000))
#Concatenate Request details
requestVars = httpVerb + epoch + data + resourcePath
#Construct signature
digest = hmac.new(
AccessKey.encode('utf-8'),
msg=requestVars.encode('utf-8'),
digestmod=hashlib.sha256).hexdigest()
signature = base64.b64encode(digest.encode('utf-8')).decode('utf-8')
#Construct headers
auth = 'LMv1 ' + AccessId + ':' + str(signature) + ':' + epoch
headers = {'Content-Type':'application/json','Authorization':auth,'X-Version':'3'}
#Make request
response = requests.get(url, data=data, headers=headers)
#Print status and body of response
print('Response Status:',response.status_code)
print('Response Body:',response.content)
The following example displays how an API request in Python script returns a list of recommendations in the api.logicmonitor.com portal, where the result is filtered based on the resourceDisplayName and cloudAccountId fields and recommendationStatus set to ACTIVE.
#!/bin/env python
import requests
import json
import hashlib
import base64
import time
import hmac
import getpass
#Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
#Note: The below is provided for illustration purposes only.
AccessId = getpass.getpass("Enter your AccessId: ")
AccessKey = getpass.getpass("Enter your AccessKey: ")
Company = 'apiAccount'
#Request Info
httpVerb ='GET'
resourcePath = '/cost-optimization/recommendations'
queryParams = '?fields=resourceDisplayName,cloudAccountId&filter=recommendationStatus:"ACTIVE"&size=3&offset=1'
data = ''
#Construct URL
url = 'https://'+ Company +'.logicmonitor.com/santaba/rest' + resourcePath +queryParams
#Get current time in milliseconds
epoch = str(int(time.time() * 1000))
#Concatenate Request details
requestVars = httpVerb + epoch + data + resourcePath
#Construct signature
digest = hmac.new(
AccessKey.encode('utf-8'),
msg=requestVars.encode('utf-8'),
digestmod=hashlib.sha256).hexdigest()
signature = base64.b64encode(digest.encode('utf-8')).decode('utf-8')
#Construct headers
auth = 'LMv1 ' + AccessId + ':' + str(signature) + ':' + epoch
headers = {'Content-Type':'application/json','Authorization':auth,'X-Version':'3'}
#Make request
response = requests.get(url, data=data, headers=headers)
#Print status and body of response
print('Response Status:',response.status_code)
print('Response Body:',response.content)
Getting Details of a Specific Recommendation
You can use the following query parameters to control the content and format of the response.
URI: GET /cost-optimization/recommendations/{id}
Parameters
Type
Description
id
String
(Mandatory) An alphanumeric ID of the recommendation. It is delimited with hyphens (-) and written in the sequence: the recommendation’s database ID-the associated resource ID-the recommendation type. The ID corresponds with the ID returned by the id field in the GET/cost-optimization/recommendations endpoint.
The following example displays how an API request in Python script returns details of a recommendation with id=12041-3054082-AZURE_DISK_UNATTACHED in the api.logicmonitor.com portal.
#!/bin/env python
import requests
import json
import hashlib
import base64
import time
import hmac
import getpass
#Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
#Note: The below is provided for illustration purposes only.
AccessId = getpass.getpass("Enter your AccessId: ")
AccessKey = getpass.getpass("Enter your AccessKey: ")
Company = 'apiAccount'
#Request Info
httpVerb ='GET'
resourcePath = '/cost-optimization/recommendations/12041-3054082-AZURE_DISK_UNATTACHED'
queryParams = ''
data = ''
#Construct URL
url = 'https://'+ Company +'.logicmonitor.com/santaba/rest' + resourcePath +queryParams
#Get current time in milliseconds
epoch = str(int(time.time() * 1000))
#Concatenate Request details
requestVars = httpVerb + epoch + data + resourcePath
#Construct signature
digest = hmac.new(
AccessKey.encode('utf-8'),
msg=requestVars.encode('utf-8'),
digestmod=hashlib.sha256).hexdigest()
signature = base64.b64encode(digest.encode('utf-8')).decode('utf-8')
#Construct headers
auth = 'LMv1 ' + AccessId + ':' + str(signature) + ':' + epoch
headers = {'Content-Type':'application/json','Authorization':auth,'X-Version':'3'}
#Make request
response = requests.get(url, data=data, headers=headers)
#Print status and body of response
print('Response Status:',response.status_code)
print('Response Body:',response.content)
Getting a List of Recommendations Categories
You can use this API endpoint to get a static list of currently available recommendation categories offered by LogicMonitor. You can use the following query parameters to control the content and format of the response.
URI: GET /cost-optimization/recommendations/categories
Parameter
Type
Description
fields
String
The response is filtered to include only the specified fields for each object. You can provide a list of properties separated by comma (,).
Indicates the number of results to display. A maximum of 500 results can be requested in a GET call. A default page size of 50 is used if a value is not specified.
The following example displays how an API request in Python script returns a list of all recommendation categories in the api.logicmonitor.com portal.
#!/bin/env python
import requests
import json
import hashlib
import base64
import time
import hmac
import getpass
#Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
#Note: The below is provided for illustration purposes only.
AccessId = getpass.getpass("Enter your AccessId: ")
AccessKey = getpass.getpass("Enter your AccessKey: ")
Company = 'apiAccount'
#Request Info
httpVerb ='GET'
resourcePath = '/cost-optimization/recommendations/categories'
queryParams = '?filter=description~"AWS"'
data = ''
#Construct URL
url = 'https://'+ Company +'.logicmonitor.com/santaba/rest' + resourcePath +queryParams
#Get current time in milliseconds
epoch = str(int(time.time() * 1000))
#Concatenate Request details
requestVars = httpVerb + epoch + data + resourcePath
#Construct signature
digest = hmac.new(
AccessKey.encode('utf-8'),
msg=requestVars.encode('utf-8'),
digestmod=hashlib.sha256).hexdigest()
signature = base64.b64encode(digest.encode('utf-8')).decode('utf-8')
#Construct headers
auth = 'LMv1 ' + AccessId + ':' + str(signature) + ':' + epoch
headers = {'Content-Type':'application/json','Authorization':auth,'X-Version':'3'}
#Make request
response = requests.get(url, data=data, headers=headers)
#Print status and body of response
print('Response Status:',response.status_code)
print('Response Body:',response.content)
The Edwin AI Settings page centralizes integration management for both outbound and inbound connections. The Settings page displays your third-party integrations.
Navigating to the Settings Page
In LogicMonitor, navigate to Edwin AI and then select the Settings page from the navigation sidebar.
The Federal Risk and Authorization Management Program (FedRAMP) is a U.S. Federal government program that provides a standardized approach to security assessment, authorization, and continuous monitoring for cloud products and services. FedRAMP leverages a standardized set of requirements, established in accordance with the Federal Information Security Management Act (FISMA), to improve consistency and confidence in the security of cloud solutions. The FedRAMP program helps U.S. Federal government agencies to accelerate their adoption of secure cloud solutions across their organization through the reuse of FedRAMP security packages.
LogicMonitor supports U.S. Federal government customers and is responsible for implementing and complying with the requirements established by the FedRAMP program. LogicMonitor maintains a FedRAMP Moderate certification, see LMforGov in the FedRAMP Marketplace.
Customer FedRAMP Obligations
To leverage LogicMonitor’s FedRAMP environment, you need the following:
FedRAMP approval LogicMonitor’s FedRAMP Moderate authorized environment is only available for approved customers.
Single Sign-On (SSO) Identity Provider You must use your own SSO provider.
For more information about how LogicMonitor manages customer interactions, sales, support, and data in a way that adheres to the stringent security and privacy standards, download LogicMonitor for Gov Platform – CRM from the LogicMonitor Trust Center.
Simultaneous FedRAMP and Commercial Accounts
You may have FedRAMP and non-FedRAMP enabled accounts as required by your business needs. To add accounts, contact your LogicMonitor account manager.
Child Accounts inherit FedRAMP enablement by the parent account. You must have distinct parent level accounts to have both a LM FedRAMP and LM Commercial account.
Important: Accounts and the data within cannot be moved between the FedRAMP and Commercial environments. For example, a pre-existing Commercial account cannot be migrated into the FedRAMP environment.
Feature In Scope
Not all LogicMonitor services or features are compliant with FedRAMP. The following table lists those services not in scope of FedRAMP compliance:
When using LogicMonitor’s API, you must replace any occurrence of “logicmonitor.com” with “lmgov.us”.
REST API
When using LogicMonitor’s REST API, the base URL for FedRAMP is the following: https://ACCOUNTNAME.lmgov.us/santaba/rest
You must replace ACCOUNTNAME with your LMforGov account name.
The following example displays how the base URL must be changed:
# Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
# Note: The below is provided for illustration purposes only.
accessId = getpass.getpass("Enter your accessId: ")
accessKey = getpass.getpass("Enter your accessKey: ")
company = 'customername'
baseUrl = 'lmgov.us/santaba/rest'
# Request Info
httpVerb = 'POST'
resourcePath = '/setting/opsnotes'
queryParams = ''
data = '{"note":"deploy version 3.4.5","tags":[{"name":"reporting"}],"scopes":[{"type":"device","deviceId":530}]}'
# Construct URL
url = 'https://' + company + baseUrl + resourcePath + queryParams
...
BigPanda helps teams correlate and manage incidents, but requires weeks of setup, tuning, and integration work to realize value. LogicMonitor delivers full-stack hybrid observability out of the box, with pre-trained generative AI that surfaces root causes and plain-language insights.
Moogsoft Stops at Alerts. LogicMonitor Fixes Them.
Moogsoft, now part of Dell APEX AIOps, leaves teams frustrated by slow deployments, months of manual rule-building, and a lack of real context in alerts. Without built-in automation or plain-language insights, it can feel like alert fatigue never ends.
That’s why teams are switching to LogicMonitor. It delivers full-stack observability from day one, with pre-trained generative AI that explains issues in plain English, pinpoints root causes, and helps eliminate alert noise—automatically.