Quick StartThe ReportMagic MenuSchedulesBatch JobsReport StudioFilesProfileAdminAccount DetailsMeraki WebHooksGetting StartedAbout ReportMagicRegistering and Logging InSearching ReportMagicConnections and AgentsWriting ReportsStarting Out With Report StudioCreating Report TemplatesRMScriptMacro ShorthandReporting on Different Periods of TimeSetting Macro Parameter DefaultsStoring Input and Output FilesReport VariablesUsing Variable ParametersSpecifying How Graphs LookStep-by-Step LogicMonitor Graph ExamplesStep-by-Step Jira Graph ExamplesSpecifying How Tables LookChanging Fonts and ColorsUsing Macros in PowerPoint TemplatesRestricted MacrosGenerating Reports Using SchedulesUsing HTML Forms in SchedulesSeeing How Reports RanViewing ReportsCached ValuesUsing AggregationsAdvanced Report StudioAPI AccessREST APIREST API - FilesAdvancedRole-Based Access Control (RBAC)SecurityMiscellaneousBadgesCertificationsTips, Tricks and Shortcut KeysMacrosAgentAgent.ConnectionAgent.ExecuteAgent.MonitorMagicNodeListAgent.MonitorMagicNodeMeasurementListAgent.MonitorMagicNodeMeasurementSummaryAgent.MonitorMagicNodePropertyListAgent.MonitorMagicNodeTypeListAgent.PropertyAgent.SqlAnalysisAgent.SqlGraphAgent.SqlListAgent.SqlTableAgent.SqlValueAgent.SqlValuesAgent.WebQueryAlertMagicAlertMagic.MetricsGraphAlertMagic.MetricsListAutoTaskAutoTask.AccountListAutoTask.AccountPropertyAutoTask.ConnectionAutoTask.CountAutoTask.FieldListAutoTask.FieldPropertyAutoTask.ListAutoTask.PropertyAutoTask.SummaryValueAutoTask.TicketListAutoTask.TicketPropertyAzureAzure.ConnectionAzure.LogAnalyticsGraphAzure.LogAnalyticsQueryAzure.LogAnalyticsScalarAzure.LogAnalyticsTableAzure.ResourceGroupListAzure.ResourceListAzure.ResourcePropertiesAzure.SentinelAlertRuleListAzure.SentinelConnectorListAzure.SentinelIncidentListAzure.SentinelThreatIndicatorListAzure.SentinelThreatIndicatorMetricListAzure.SubscriptionListBloggerBlogger.BlogPropertyBlogger.ConnectionBlogger.PageBlogger.PageListBlogger.PagePropertyBlogger.PostBlogger.PostListBlogger.PostPropertyCacheCache.ExpiresCache.GetCache.IsSetCache.SetCache.UnsetCertifyCertify.ConnectionCertify.DepartmentListCertify.DepartmentPropertyCherwellCherwell.BusinessObjectDefinitionListCherwell.BusinessObjectListCherwell.BusinessObjectSchemaCherwell.BusinessObjectSummaryCherwell.ConnectionCiscoCisco.ConnectionCisco.FirmwareVersionPropertyCisco.SecurityAdvisoryListCisco.SerialNumberPropertyCisco.SoftwareSuggestionListCiscoDnaCenterCiscoDnaCenter.ConnectionCiscoDnaCenter.SiteListCiscoDnaCenter.SitePropertyCloudHealthCloudHealth.AssetDetailsCloudHealth.AssetListCloudHealth.AvailableReportDimensionsCloudHealth.AvailableReportOptionsCloudHealth.AvailableReportsListCloudHealth.AwsAccountDetailsCloudHealth.AwsAccountsListCloudHealth.ConnectionCloudHealth.CustomerDetailsCloudHealth.CustomerListCloudHealth.CustomerReportDetailsCloudHealth.CustomerStatementDetailsCloudHealth.OrganisationAccountsListCloudHealth.OrganisationListCloudHealth.QueryConnectWiseManageConnectWiseManage.ConnectionConnectWiseManage.CountConnectWiseManage.DictionaryConnectWiseManage.ListConnectWiseManage.PropertyCoreArrayArray.CountBreakBreakpointCalculateColorCommentContinueConvertDeleteDeleteRowDocumentBookmarkDocumentBreakDocumentInsertSectionDocumentSectionEmailEmailFileEmailReportExecuteForEachFormatTableCellFormatTableRowIfIgnoreIncInsertTableCellImageIsSetLinearRegressionLinkMapObjectRandomRegexRepeatRowSearchAndReplaceSectionSettingsSleepStopStopwatchStringStringIndexSubstringSwitchThrowExceptionUnsetWarningDatabaseDatabase.ConnectionDatabase.GraphDatabase.ListDatabase.TableDatabase.ValueDatabase.ValuesDataMagicDataMagic.SyncDictionaryDictionary.ItemDictionary.KeysDictionary.ValuesDocumentDocument.SetPropertiesFileFile.CopyFile.CopyOutputFilesFile.Csv.CellFile.Csv.RowFile.Csv.RowCountFile.Csv.TableFile.EmbedFile.ExecuteFile.ExistsFile.ImageFile.InsertFile.ListFile.LoadListFile.LoadObjectFile.LoadStringFile.LoadVariablesFile.Xlsx.CellFile.Xlsx.RowFile.Xlsx.RowCountFile.Xlsx.TableFunctionFunction.CallFunction.DefineGoogleGoogle.ConnectionGoogle.TableGraphGraph.AddDataGraph.DeleteDataGraph.RenameDataGraph.UpdateGravatarGravatar.ImageHighlightHighlight.BearerSummaryHighlight.BroadbandSummaryHighlight.CellularSummaryHighlight.ConnectionHighlight.FolderListHighlight.HttpServerPerformanceSummaryHighlight.IcmpTcpUdpPerformanceSummaryHighlight.MosPerformanceSummaryHighlight.PrecisionPerformanceSummaryHighlight.TunnelSummaryHighlight.WatchNodeListHighlight.WirelessAccessPointSummaryHubSpotHubSpot.ListJarrayJarray.TableJiraJira.AttachmentImageJira.AttachmentListJira.AttachmentPropertyJira.ConnectionJira.GraphJira.InsertMarkupJira.IssueAnalysisJira.IssueCommentListJira.IssueCommentPropertyJira.IssueLastCommentPropertyJira.IssueListJira.IssuePropertyJira.IssueResponseTimeJira.LastImageJira.StatusListJira.TableJira.TimeInStateJira.UserListJira.UserPropertyJsonJson.ItemJson.ListKrokiKroki.ImageListList.AddList.AnalysisList.ComplementList.CountList.DequeueList.DuplicatesList.FirstList.GraphList.GroupByList.IndicesOfList.IntersectionList.ItemList.RangeList.SelectList.SelectColumnsList.SortList.SummaryValueList.TableList.UnionList.WhereLogicMonitorLogicMonitor.AccountPropertyLogicMonitor.AlertAnalysisLogicMonitor.AlertCalendarLogicMonitor.AlertCountLogicMonitor.AlertListLogicMonitor.AlertMapLogicMonitor.AlertPropertyLogicMonitor.AlertRuleListLogicMonitor.AlertRulePropertyLogicMonitor.AlertStatusLogicMonitor.AlertTableLogicMonitor.AppliesToFunctionListLogicMonitor.AppliesToFunctionPropertyLogicMonitor.AppliesToListLogicMonitor.AuditEventAnalysisLogicMonitor.BigNumberWidgetValuesLogicMonitor.ClearCacheLogicMonitor.CollectorExecuteLogicMonitor.CollectorGroupListLogicMonitor.CollectorGroupPropertyLogicMonitor.CollectorListLogicMonitor.CollectorPropertyLogicMonitor.CollectorVersionListLogicMonitor.CollectorVersionPropertyLogicMonitor.ConfigCheckListLogicMonitor.ConfigCheckPropertyLogicMonitor.ConfigSourceGroupListLogicMonitor.ConfigSourceListLogicMonitor.ConfigSourcePropertyLogicMonitor.ConfigSourceXmlLogicMonitor.ConnectionLogicMonitor.ConnectionApiTokenLogicMonitor.ConvertToLiveWidgetLogicMonitor.DashboardLogicMonitor.DashboardGroupListLogicMonitor.DashboardGroupPropertyLogicMonitor.DashboardListLogicMonitor.DashboardPropertyLogicMonitor.DashboardWidgetListLogicMonitor.DatamartSyncLogicMonitor.DataPointListLogicMonitor.DataPointPropertyLogicMonitor.DataSourceGraphListLogicMonitor.DataSourceGraphPropertyLogicMonitor.DataSourceGroupListLogicMonitor.DataSourceListLogicMonitor.DataSourcePropertyLogicMonitor.DataSourceXmlLogicMonitor.DeviceConfigSourceFileLogicMonitor.DeviceConfigSourceInstanceListLogicMonitor.DeviceConfigSourceListLogicMonitor.DeviceConfigSourcePropertyLogicMonitor.DeviceCountLogicMonitor.DeviceDataSourceListLogicMonitor.DeviceDataSourcePropertyLogicMonitor.DeviceGroupListLogicMonitor.DeviceGroupPropertyLogicMonitor.DeviceListLogicMonitor.DevicePropertyLogicMonitor.DeviceSlaWidgetPropertyLogicMonitor.DeviceTableLogicMonitor.EscalationChainDestinationListLogicMonitor.EscalationChainDestinationPropertyLogicMonitor.EscalationChainListLogicMonitor.EscalationChainPropertyLogicMonitor.EventSourceFilterListLogicMonitor.EventSourceFilterPropertyLogicMonitor.EventSourceGroupListLogicMonitor.EventSourceListLogicMonitor.EventSourcePropertyLogicMonitor.EventSourceXmlLogicMonitor.FinancialInformationLogicMonitor.ForecastLogicMonitor.GraphLogicMonitor.HistoricSdtListLogicMonitor.ImageLogicMonitor.InstanceAnalysisLogicMonitor.InstanceCountLogicMonitor.InstanceDetailsTableLogicMonitor.InstanceGroupCountLogicMonitor.InstanceGroupListLogicMonitor.InstanceListLogicMonitor.InstancePropertyLogicMonitor.IntegrationListLogicMonitor.IntegrationPropertyLogicMonitor.JobMonitorListLogicMonitor.JobMonitorPropertyLogicMonitor.LastMeasurementLogicMonitor.LogAnalysisLogicMonitor.LogicModuleMetadataPropertyLogicMonitor.LogicModuleUpdateListLogicMonitor.LogicModuleUpdatePropertyLogicMonitor.LogItemListLogicMonitor.NetscanGroupListLogicMonitor.NetscanGroupPropertyLogicMonitor.NetscanListLogicMonitor.NetscanPropertyLogicMonitor.NewUserMessagePropertyLogicMonitor.PaymentInformationLogicMonitor.PercentageAvailabilityLogicMonitor.PortalVersionLogicMonitor.PropertySourceGroupListLogicMonitor.PropertySourceJsonLogicMonitor.PropertySourceListLogicMonitor.PropertySourcePropertyLogicMonitor.QueryLogicMonitor.RecipientGroupListLogicMonitor.RecipientGroupPropertyLogicMonitor.RecycleBinItemListLogicMonitor.RecycleBinItemPropertyLogicMonitor.ReportGroupListLogicMonitor.ReportGroupPropertyLogicMonitor.ReportListLogicMonitor.ReportPropertyLogicMonitor.ResourceAnalysisLogicMonitor.ResourceGroupAnalysisLogicMonitor.RoleListLogicMonitor.RolePropertyLogicMonitor.SdtListLogicMonitor.SdtPercentageLogicMonitor.SdtPropertyLogicMonitor.SingleSignOnPropertyLogicMonitor.SlaWidgetValuesLogicMonitor.SnmpSysOidMapListLogicMonitor.SnmpSysOidMapPropertyLogicMonitor.SummaryValueLogicMonitor.SummaryValueListLogicMonitor.ThresholdLogicMonitor.TrafficTableLogicMonitor.UnmonitoredDeviceListLogicMonitor.UnmonitoredDevicePropertyLogicMonitor.UserApiTokenListLogicMonitor.UserApiTokenPropertyLogicMonitor.UserListLogicMonitor.UserPropertyLogicMonitor.WebsiteCheckpointDataListLogicMonitor.WebsiteCountLogicMonitor.WebsiteGroupAnalysisLogicMonitor.WebsiteGroupCountLogicMonitor.WebsiteGroupListLogicMonitor.WebsiteGroupPropertyLogicMonitor.WebsiteListLogicMonitor.WebsitePropertyLogicMonitor.WidgetStatusMagicSuiteMagicSuite.SubscriptionListMerakiMeraki.CameraImageMeraki.ConfigurationChangeListMeraki.ConnectionMeraki.DevicePropertyMeraki.DeviceUplinkPropertyMeraki.EndOfLifeMeraki.NetworkClientListMeraki.NetworkDeviceListMeraki.NetworkEventListMeraki.NetworkListMeraki.NetworkPropertyMeraki.NetworkSwitchPortsListMeraki.NetworkSwitchStackListMeraki.OrganizationDeviceLicenseListMeraki.OrganizationDeviceLicensePropertyMeraki.OrganizationDeviceListMeraki.OrganizationDeviceListStatusPropertyMeraki.OrganizationInventoryListMeraki.OrganizationLicenseStatePropertyMeraki.OrganizationListMeraki.OrganizationPropertyMeraki.OrganizationUplinkUsageMeraki.WirelessNetworkClientConnectionStatsPropertyMeraki.WirelessNetworkClientLatencyListMeraki.WirelessNetworkClientsConnectionStatsListMeraki.WirelessNetworkClientsLatencyListMeraki.WirelessNetworkConnectionStatsPropertyMeraki.WirelessNetworkDeviceConnectionStatsPropertyMeraki.WirelessNetworkDeviceLatencyListMeraki.WirelessNetworkDevicesConnectionStatsListMeraki.WirelessNetworkDevicesLatencyListMeraki.WirelessNetworkLatencyListMicrosoftDataverseMicrosoftDataverse.ConnectionMicrosoftDataverse.CountMicrosoftDataverse.EntityDefinitionsListMicrosoftDataverse.EntityListMicrosoftDataverse.EntityPropertyListMicrosoftDataverse.ListMicrosoftDataverse.PropertyMicrosoftGraphMicrosoftGraph.ConnectionMicrosoftGraph.MicrosoftDataverseConnectionMicrosoftGraph.QueryObjectObject.ArrayCountObject.PropertyObject.TypeObject.UnpackObject.UnpackVariablesOpenAiOpenAi.AnswerOpenAi.CompleteOpenAi.ConnectionOpenAi.ImageQuickBooksQuickBooks.ConnectionQuickBooks.PropertyReportMagicReportMagic.ApplyBrandReportMagic.BadgeListReportMagic.ConnectionListReportMagic.ConnectionPropertyReportMagic.ConnectionStatusPropertyReportMagic.FeedbackListReportMagic.FeedbackPropertyReportMagic.MacroGroupListReportMagic.MacroHelpReportMagic.MacroListReportMagic.ReportBatchJobCountReportMagic.ReportBatchJobListReportMagic.ReportBatchJobPropertyReportMagic.ReportConnectionSummaryReportMagic.ReportJobCountReportMagic.ReportJobListReportMagic.ReportJobPropertyReportMagic.ReportMacroCountReportMagic.ReportPropertyReportMagic.ReportScheduleCountReportMagic.ReportScheduleListReportMagic.ReportSchedulePropertyReportMagic.SetReportPropertyReportMagic.SystemPropertyReportMagic.TenantImageReportMagic.TopicHelpReportMagic.VersionSalesforceSalesforce.ConnectionSalesforce.ListSalesforce.PropertyServiceNowServiceNow.ConnectionServiceNow.CountServiceNow.CreateServiceNow.DeleteServiceNow.DictionaryServiceNow.ListServiceNow.PropertyServiceNow.UpdateShapeShape.AddShape.CloneShape.DeleteShape.FormatShape.HideShape.SetPropertyShape.SetTextSlackSlack.ConnectionSlack.MessageSlideSlide.DeleteSlide.DeleteSectionSlide.LinkSlide.MoveToSlide.RepeatSmtpSmtp.ConnectionSnmpSnmp.EnterprisePropertySolarWindsSolarWinds.ConnectionSolarWinds.SqlListSolarWinds.SqlTableSqlSql.AnalysisTableTable.ColumnCountTable.DeleteTable.FormatTable.GraphTable.MergeCellsTable.RowCountTable.SaveTable.SortTable.WorldMapTimeCalendarCronHumanReadableCronRunDateDateRangeDateTimeDateTime.IsInWorkHoursDateTime.WorkHoursDurationTimeSpanTogglToggl.ClientListToggl.ClientPropertyToggl.ConnectionToggl.ProjectListToggl.ProjectPropertyToggl.ProjectReportPropertyToggl.TimeEntryListToggl.TimeEntryPropertyToggl.UserListToggl.UserPropertyToggl.WorkspaceListToggl.WorkspacePropertyTwilioTwilio.ConnectionTwilio.SmsUkParliamentUkParliament.PetitionCountUkParliament.PetitionListUkParliament.PetitionPropertyVariableVariable.ImageVariable.ListVariable.PropertyWebWeb.ConnectionWeb.HtmlWeb.ImageWeb.QueryWeb.ScreenshotWeb.TableWeb.TextXlsxXlsx.AddAnalysisXlsx.EmbedZendeskZendesk.ConnectionZendesk.ListZendesk.PropertyZoho.DeskZoho.Desk.ZohoListZoho.Desk.ZohoProperty

[LogicMonitor.AlertAnalysis:]

Adds an Alert Analysis tab to the XLSX output document.


Macro Compatibility

The macro can be used in the highlighted input document types only. A greyed-out icon indicates not supported.


Usage

Does not work in Report Studio. More details about alert macros can be found at https://reportmagic.blogspot.com/p/reportmagic-alert-macros.html. The default columns output into the XLSX file are: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'Count', 'FractionalCount' and 'AffectedGroupCount'. This macro intentionally fails if the date range is greater than 3 months, for memory and performance reasons.


Parameter TypeDeprecation Message Preferred ParameterPresence Purpose Options Default
resourceTemplateId
Int32Conditional Only include alerts relating to a LogicModule with this Id. WARNING! Multiple LogicModules could have the same Id. Only use with useCache=true. N/A N/A
ackCommentMatchesRegex
RegexOptional If present, only alerts with acknowledgement comments matching the regular expression are included. N/A N/A
ackFilter
AckFilterOptional All: Both non-acknowledged alerts and acknowledged alerts will be returned. Acked: Alerts that have been acknowledged will be returned. Nonacked: Alerts that have not been acknowledged will be returned.
  • All
  • Acked
  • Nonacked
All
addChart
BooleanOptional Whether to add a chart to the Analytics worksheet.
  • true
  • false
true
addTitle
BooleanOptional Whether to add a title to the Analytics worksheet.
  • true
  • false
true
alertType
List<String>DeprecatedalertTypes The semicolon-separated list of alertTypes to fetch. Options are: 'AlertThrottled', 'BatchJob', 'CollectorDown', 'CollectorFailBack', 'CollectorFailover', 'DataSource', 'EventSource', 'Log', 'ResourceCluster', 'Unknown' or 'Website'. N/A N/A
alertTypes
List<String>

Use instead of:

  • alertType
Optional The semicolon-separated list of alertTypes to fetch. Options are: 'AlertThrottled', 'BatchJob', 'CollectorDown', 'CollectorFailBack', 'CollectorFailover', 'DataSource', 'EventSource', 'Log', 'ResourceCluster', 'Unknown' or 'Website'. N/A N/A
auto
BooleanOptional If 'true', the reporting period will be the last calendar month and neither startDate nor endDate parameters may be used.
  • true
  • false
false
collectorId
Int32DeprecatedmonitorObjectId Simply the ID of the device/website/collector that you want to retrieve alert data for. If used, do not specify monitorObjectDisplayName. When used with 'useCache=false', you should also specify whether the entity (in LogicMonitor) in question is a Device, a Website or something else using 'monitorObjectType'. When using the cache, this is not necessary. N/A N/A
columnFields
List<String>DeprecatedpivotTableColumnFields The pivot table column fields. In Excel's PivotTable Fields UI, these correspond to the items in the 'Columns' section. You an use any of the heading names: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'FractionalCount' and 'AffectedGroupCount'. N/A N/A
columnGrandTotals
BooleanOptional Whether to add column grand totals to the pivot table.
  • true
  • false
true
comment
StringOptional Add a comment to make your document template more readable. The comment is discarded in the output document. N/A N/A
connectionName
StringOptional The name of the Connection. N/A N/A
dataPoint
StringOptional The name of the dataPoint that you want to retrieve alert data for. N/A N/A
dataSource
String

Use instead of:

  • dataSourceName
Optional The DataSource unique name. N/A N/A
dataSourceInstance
String

Use instead of:

  • dataSourceInstanceName
Optional The Datasource Instance e.g. WinVolumeUsage-F: N/A N/A
dataSourceInstanceName
StringDeprecateddataSourceInstance The Datasource Instance e.g. WinVolumeUsage-F: N/A N/A
dataSourceName
StringDeprecateddataSource The DataSource unique name. N/A N/A
device
StringDeprecatedmonitorObjectDisplayName The display name of the device that you want to retrieve alert data for. If used, do not specify monitorObjectId. N/A N/A
deviceGroup
StringDeprecatedresourceGroupName Only include alerts relating to this device group (end with an asterisk (*) to include child device groups). Use "/" or not value to reference the root folder. N/A N/A
deviceId
Int32DeprecatedmonitorObjectId Simply the ID of the device/website/collector that you want to retrieve alert data for. If used, do not specify monitorObjectDisplayName. When used with 'useCache=false', you should also specify whether the entity (in LogicMonitor) in question is a Device, a Website or something else using 'monitorObjectType'. When using the cache, this is not necessary. N/A N/A
deviceName
StringDeprecatedmonitorObjectDisplayName The display name of the device that you want to retrieve alert data for. If used, do not specify monitorObjectId. N/A N/A
endDate
DateTimeOffsetOptional The end date in the format YYYY-MM-DD. N/A Midnight on the first day of this month
errorOnOverflow
BooleanOptional Should NCalc expression evaluation throw error on Overflow
  • true
  • false
true
excludeDeletedDevices
BooleanDeprecatedexcludeDeletedResources Whether to exclude alerts for Resources that no longer exist in the portal (based on Resource ID). This has no effect unless useCache=true (as Resources removed from LogicMonitor automatically causes their alerts to be deleted).
  • true
  • false
false
excludeDeletedDevices
BooleanOptional Whether to exclude Alerts for Resources that no longer exist in the portal (based on Resource ID). This has no effect unless useCache=true (as Resources removed from LogicMonitor automatically causes their alerts to be deleted).
  • true
  • false
false
excludeDeletedResources
Boolean

Use instead of:

  • excludeDeletedDevices
Optional Whether to exclude alerts for Resources that no longer exist in the portal (based on Resource ID). This has no effect unless useCache=true (as Resources removed from LogicMonitor automatically causes their alerts to be deleted).
  • true
  • false
false
excludeGroups
List<String>Optional The full paths of the groups to exclude. N/A N/A
failureText
StringOptional The text to display should the macro fail to execute. Note that a poorly-specified macro (e.g. omitting mandatory parameters) will still result in an error message. N/A N/A
filterFields
List<String>DeprecatedpivotTableFilterFields The pivot table filter fields. In Excel's PivotTable Fields UI, these correspond to the items in the 'Filters' section. You an use any of the heading names: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'FractionalCount' and 'AffectedGroupCount'. N/A N/A
filterSDT
SdtFilterDeprecatedsdted Filter alerts by SDT status where SDT means only include alerts created during SDT in the results, NonSdt means only include alerts created outside SDT in the results and All shows all alerts.
  • All
  • Sdt
  • NonSdt
All
group
StringDeprecatedresourceGroupName Only include alerts relating to this device group (end with an asterisk (*) to include child device groups). Use "/" or not value to reference the root folder. N/A N/A
host
StringDeprecatedmonitorObjectDisplayName The display name of the device that you want to retrieve alert data for. If used, do not specify monitorObjectId. N/A N/A
id
StringOptional The specific unique alert ID to fetch. N/A N/A
if
StringOptional The condition that must be true in order for the macro to be executed/evaluated. Must either evaluate to true or false, for example: "3+5=8" or "contains('abcd', 'z'). N/A true
includeBody
BooleanOptional Whether to include the Alert body.
  • true
  • false
false
includeInactive
BooleanOptional true: Historical alert records will be returned (i.e. both active and inactive alert details). false: Only active alert details will be returned.
  • true
  • false
true
includeSubject
BooleanOptional Whether to include the Alert subject.
  • true
  • false
false
internalId
StringDeprecatedproblemSignature Only include alerts matching this problem signature (InternalId). N/A N/A
level
AlertLevelOptional The Alert level.
  • Warning
  • All
  • Error
  • Critical
  • DoMapping
  • Any
Warning
maxAttempts
Int32Optional The maximum number of attempts when requesting data via the LogicMonitor API.
  • From 1 to 2147483647
N/A
minimumDurationMinutes
Int32Optional Filter alerts where the alert has been active for more than the specified number of minutes. N/A N/A
mode
MacroModeOptional The mode in which variables are stored. In the legacy mode (default for Schedules), the variable created is a string and formatted. In the normal mode (default for Report Studio), the output variable is stored as a strongly-typed object, e.g. an Int32 or a List etc., rather than a formatted string.
  • Legacy
  • Normal
Legacy
monitorObjectDisplayName
String

Use instead of:

  • device
  • deviceName
  • host
Optional The display name of the device that you want to retrieve alert data for. If used, do not specify monitorObjectId. N/A N/A
monitorObjectId
Int32

Use instead of:

  • collectorId
  • deviceId
  • websiteId
Optional Simply the ID of the device/website/collector that you want to retrieve alert data for. If used, do not specify monitorObjectDisplayName. When used with 'useCache=false', you should also specify whether the entity (in LogicMonitor) in question is a Device, a Website or something else using 'monitorObjectType'. When using the cache, this is not necessary. N/A N/A
monitorObjectType
MonitorObjectTypeOptional Determines whether the monitored object in question is a Device or a Website, when specifying the Monitor Object ID and 'useCache=false'. This is necessary because there are specific LogicMonitor API calls to fetch alerts that are used in each case, in order to ensure that, for example, a Device that has had its name changed can still be queried for all alerts by its ID. Just specifying the Monitor Object ID alone is insufficient to determine the type.
  • Device
  • Other
  • Website
Device
monthsToReport
Int32Optional If set, sets 'endDate' to the 'start' plus the specified number of months. N/A N/A
obfuscation
ObfuscationTypeOptional Obfuscation type. Use obfuscation to write reports where sensitive data is hidden. When used, ReportMagic guarantees that the same input string will map to the same output string for the whole of the report (but the next time the report runs, it will most likely map to a different value). If you use obfuscation, the property in your macro will not show up and instead, you will see a fake item of the obfuscation type chosen.
  • None
  • UkTown
  • DeviceName
  • Company
  • IpAddress
  • PrivateIpAddress
None
orderBy
StringOptional The order the alerts should be retrieved in. N/A StartOnSeconds
orderDirection
Filters.OrderDirectionOptional The direction of the order the alerts should be retrieved in.
  • Desc
  • Asc
Desc
pivotTableColumnFields
List<String>

Use instead of:

  • columnFields
Optional The pivot table column fields. In Excel's PivotTable Fields UI, these correspond to the items in the 'Columns' section. You an use any of the heading names: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'FractionalCount' and 'AffectedGroupCount'. N/A N/A
pivotTableFilterFields
List<String>

Use instead of:

  • filterFields
Optional The pivot table filter fields. In Excel's PivotTable Fields UI, these correspond to the items in the 'Filters' section. You an use any of the heading names: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'FractionalCount' and 'AffectedGroupCount'. N/A N/A
pivotTableRowFields
List<String>

Use instead of:

  • rowFields
Optional The pivot table row fields. In Excel's PivotTable Fields UI, these correspond to the items in the 'Rows' section. You an use any of the heading names: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'FractionalCount' and 'AffectedGroupCount'. N/A N/A
pivotTableValueFields
List<String>

Use instead of:

  • valueFields
Optional The pivot table value fields. In Excel's PivotTable Fields UI, these correspond to the items in the 'Values' section. For each column name, you can specify the aggregation to use via the ^ character e.g. column1^Sum. Omit this to use the default Count aggregation. Valid aggregation values are: 'Average', 'Count', 'CountNumbers', 'Max', 'Min', 'Product', 'StdDev', 'StdDevP', 'Sum', 'Var' or 'VarP'. For each column name, if and only if you have specified an aggregation, you can also specify the number format to use in the pivot table and chart. To do this, use an additional caret separator and specify the number format. For example: column1^Sum^0.00 would use 2 decimal places for the format. You an use any of the heading names: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'FractionalCount' and 'AffectedGroupCount'. N/A N/A
problemSignature
String

Use instead of:

  • internalId
Optional Only include alerts matching this problem signature (InternalId). N/A N/A
recurseDeviceGroups
BooleanOptional Whether to recurse device groups. Specify true to include alerts from child device groups.
  • true
  • false
true
resourceGroupName
String

Use instead of:

  • deviceGroup
  • group
Optional Only include alerts relating to this device group (end with an asterisk (*) to include child device groups). Use "/" or not value to reference the root folder. N/A N/A
resourceProperties
List<String>Optional For each resource / website property specified (auto, custom, inherited or system properties), this includes the property name as a header in the XLSX 'fact' worksheet, and its value when present (otherwise empty). Note: the macro may take significantly longer to run in this case. N/A N/A
resourceTemplateDisplayName
StringOptional Only include alerts relating to a LogicModule with this **Display Name** (NOT unique name). WARNING! Multiple LogicModules (even of the same type) could have the same display name. N/A N/A
resourceTemplateDisplayNameMatchesRegex
RegexOptional If present, only alerts with a resource template name matching the regular expression are included. N/A N/A
results
Int32Deprecatedtake The maximum number to take. N/A N/A
rowFields
List<String>DeprecatedpivotTableRowFields The pivot table row fields. In Excel's PivotTable Fields UI, these correspond to the items in the 'Rows' section. You an use any of the heading names: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'FractionalCount' and 'AffectedGroupCount'. N/A N/A
rowGrandTotals
BooleanOptional Whether to add row grand totals to the pivot table.
  • true
  • false
false
sdted
SdtFilter

Use instead of:

  • filterSDT
Optional Filter alerts by SDT status where SDT means only include alerts created during SDT in the results, NonSdt means only include alerts created outside SDT in the results and All shows all alerts.
  • All
  • Sdt
  • NonSdt
All
serviceId
Int32Due to an issue with the LogicMonitor API, you should no longer filter alerts using any of the parameters: dataSourceName, dataSourceId, websiteName, websiteId. You have some choices, but the 'too long, didn't read' version is 'use a combination of resourceTemplateId and alertType parameters to filter by a specific LogicModule.' Here's the full spiel: 1) If you want to filter by a string, please filter using the resourceTemplateName and the *DisplayName* (not the unique name), but be aware that alerts from any other LogicModule with the same name will also be included - if there is only one LogicModule with this display name, you will have the desired outcome. 2) If you want to filter by an id, please filter using resourceTemplateId, but be aware that alerts from any other LogicModule with the same name will also be included - if there is only one LogicModule with this Id, you will have the desired outcome. You can use this in combination with the alertType parameter and a single alertType (e.g. DataSource) to guarantee the desired outcome.monitorObjectIdOptional DEPRECATED N/A N/A
serviceName
StringDue to an issue with the LogicMonitor API, you should no longer filter alerts using any of the parameters: dataSourceName, dataSourceId, websiteName, websiteId. You have some choices, but the 'too long, didn't read' version is 'use a combination of resourceTemplateId and alertType parameters to filter by a specific LogicModule.' Here's the full spiel: 1) If you want to filter by a string, please filter using the resourceTemplateName and the *DisplayName* (not the unique name), but be aware that alerts from any other LogicModule with the same name will also be included - if there is only one LogicModule with this display name, you will have the desired outcome. 2) If you want to filter by an id, please filter using resourceTemplateId, but be aware that alerts from any other LogicModule with the same name will also be included - if there is only one LogicModule with this Id, you will have the desired outcome. You can use this in combination with the alertType parameter and a single alertType (e.g. DataSource) to guarantee the desired outcome.resourceTemplateDisplayNameOptional DEPRECATED N/A N/A
skip
Int32Optional The number of items to skip. N/A N/A
startDate
DateTimeOffsetOptional The start date in the format YYYY-MM-DD. N/A Midnight on the first day of last month
take
Int32

Use instead of:

  • results
Optional The maximum number to take. N/A N/A
useCache
BooleanOptional Whether to use the cache (where supported).
  • true
  • false
false
valueFields
List<String>DeprecatedpivotTableValueFields The pivot table value fields. In Excel's PivotTable Fields UI, these correspond to the items in the 'Values' section. For each column name, you can specify the aggregation to use via the ^ character e.g. column1^Sum. Omit this to use the default Count aggregation. Valid aggregation values are: 'Average', 'Count', 'CountNumbers', 'Max', 'Min', 'Product', 'StdDev', 'StdDevP', 'Sum', 'Var' or 'VarP'. For each column name, if and only if you have specified an aggregation, you can also specify the number format to use in the pivot table and chart. To do this, use an additional caret separator and specify the number format. For example: column1^Sum^0.00 would use 2 decimal places for the format. You an use any of the heading names: 'AckComment', 'Acked', 'AckedBy', 'AckedOnUtc', 'Active', 'AlertRecipients', 'AlertRuleId', 'AlertRuleName', 'AlertType', 'Body', 'ClearValue', 'DataPoint', 'DataSourceId', 'DataSourceName', 'DataSourceInstance', 'DataSourceInstanceDescription', 'DataSourceInstanceId', 'GroupLevel1', 'GroupLevel2', 'GroupLevel3', 'GroupLevel4', 'GroupLevel5', 'GroupFullPath', 'ResourceId', 'ResourceName', 'EndOnUtc', 'EndOnUtcDate', 'EndOnUtcDateDayOfWeek', 'EndOnUtcDateHourOfDay', 'EscalationChainId', 'EscalationChainName', 'EscalationSubChainId', 'Id', 'InScheduledDownTime', 'Level', 'NextRecipient', 'StartOnUtc', 'StartOnUtcDate', 'StartOnUtcDateDayOfWeek', 'StartOnUtcDateHourOfDay', 'Subject', 'Thresholds', 'InternalId', 'Value', 'DurationGroup', 'DurationString', 'DurationMinutes', 'FractionalCount' and 'AffectedGroupCount'. N/A N/A
waitDuringUpgrades
BooleanOptional Whether to wait during LogicMonitor upgrades (i.e. execution essentially pauses).
  • true
  • false
N/A
warning
StringOptional If specified, adds a warning message for this macro. This is processed as an NCalc, and the warning message will ALWAYS be present and will be the value of the evaluated NCalc expression. N/A N/A
websiteId
Int32DeprecatedmonitorObjectId Simply the ID of the device/website/collector that you want to retrieve alert data for. If used, do not specify monitorObjectDisplayName. When used with 'useCache=false', you should also specify whether the entity (in LogicMonitor) in question is a Device, a Website or something else using 'monitorObjectType'. When using the cache, this is not necessary. N/A N/A
worksheetName
StringOptional The name to use for the analytics worksheet (which will contain the pivot table and chart). The data worksheet (which will contain the 'fact table') uses this name plus the suffix ' Data'. If a worksheet by this name already exists, the new name will have a number appended, e.g. Analytics1, Analytics2, etc. Excel does not allow blank names, names above 31 characters, and the following characters: :, /, \, ?, *, [, ]. N/A Alert Analytics

Examples (3)

Example 1: Normal mode

This Normal Mode example fetches all Alerts with a level of error for the specific Resource Group (historically known as a Device Group) and sets a custom worksheet name:

[LogicMonitor.DeviceGroupList: mode=Normal, deviceGroups=/, recurseDeviceGroups=true, property=FullPath, =>A, orderBy=Description][Json.List: jArray=`{A}`, jsonPath="$.[0].FullPath", =>DeviceFullPath]
*** [String: value={DeviceFullPath}] *** : [LogicMonitor.AlertAnalysis: worksheetName=My Analytics Worksheet, level=Error, resourceGroupName={DeviceFullPath}, failureText=No info]

Example 2: Normal mode

This Normal Mode example adds additional columns to the source data worksheet (the 'fact' worksheet) to insert the value of the system property 'system.collectorid' and a custom property 'customer.code':

[LogicMonitor.DeviceGroupList: mode=Normal, deviceGroups=/, recurseDeviceGroups=true, property=FullPath, =>A, orderBy=Description][Json.List: jArray=`{A}`, jsonPath="$.[0].FullPath", =>DeviceFullPath]
*** [String: value={DeviceFullPath}] *** : [LogicMonitor.AlertAnalysis: level=Error, resourceGroupName={DeviceFullPath}, resourceProperties=system.collectorid;customer.code, failureText=No info]

Example 3: Normal mode

This Normal Mode example customises and sets up the pivot table in the analysis worksheet:

[LogicMonitor.DeviceGroupList: mode=Normal, deviceGroups=/, recurseDeviceGroups=true, property=FullPath, =>A, orderBy=Description][Json.List: jArray=`{A}`, jsonPath="$.[0].FullPath", =>DeviceFullPath]
*** [String: value={DeviceFullPath}] *** : [LogicMonitor.AlertAnalysis: level=Error, resourceGroupName={DeviceFullPath}, pivotTableColumnFields=AckedBy, pivotTableFilterFields=Acked, pivotTableRowFields=AckedOnUtc;Active, pivotTableValueFields=Acked, failureText=No info]
An unhandled error has occurred. Reload 🗙