-
Notifications
You must be signed in to change notification settings - Fork 142
SAM AppInsight applications
Applnsight applications provide a level of detail and expert knowledge far beyond what a simple template can provide, allowing you to monitor virtually every aspect of the assigned application.
Like any unassigned application in SAM, Appinsight applications are considered templates until applied. Therefore, it is a member of the Application Monitor Templates collection.
Once applied to a node, Applnsight applications are considered applications like any SAM application, Applnsight applications are comprised of multiple component monitors, also known as performance counters.
Currently, SAM offers 4 different Applnsight Applications:
- AppInsight for Active Directory
- AppInsight for Exchange
- AppInsight for IIS
- AppInsight for SQL
Orion SDK provides different endpoints and examples for configurations of the AppInsights. See PowerShell samples
To set up any application within the Server & Application Monitor (SAM), you are required to furnish both the applicationTemplateId and credentialSetId. These identifiers play crucial roles in defining the application's template and specifying the credentials necessary for its configuration.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Query?query=SELECT+ApplicationTemplateID%2c+Name%2c+CustomApplicationType+FROM+Orion.APM.ApplicationTemplate+WHERE+Name+LIKE+%27%25AppInsight%25%27
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"results": [
{
"ApplicationTemplateID": 10,
"Name": "AppInsight for Active Directory",
"CustomApplicationType": "ABAA"
},
{
"ApplicationTemplateID": 11,
"Name": "AppInsight for IIS",
"CustomApplicationType": "ABIA"
},
{
"ApplicationTemplateID": 12,
"Name": "AppInsight for Exchange",
"CustomApplicationType": "ABXA"
},
{
"ApplicationTemplateID": 13,
"Name": "AppInsight for SQL",
"CustomApplicationType": "ABSA"
}
]
}
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Query?query=SELECT+ID%2c+Name%2c+CredentialType%2c+CredentialOwner+FROM+Orion.Credential+WHERE+CredentialOwner+%3d+%27APM%27
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"results": [
{
"ID": 9,
"Name": "sqlcred",
"CredentialType": "SolarWinds.APM.Common.Credentials.ApmUsernamePasswordCredential",
"CredentialOwner": "APM"
},
{
"ID": 10,
"Name": "iiscred",
"CredentialType": "SolarWinds.APM.Common.Credentials.ApmUsernamePasswordCredential",
"CredentialOwner": "APM"
},
{
"ID": 12,
"Name": "activeDirectory",
"CredentialType": "SolarWinds.APM.Common.Credentials.ApmUsernamePasswordCredential",
"CredentialOwner": "APM"
},
{
"ID": 14,
"Name": "exchangeSrver",
"CredentialType": "SolarWinds.APM.Common.Credentials.ApmUsernamePasswordCredential",
"CredentialOwner": "APM"
}
]
}
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.Credential/CreateCredentials
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"type": "SolarWinds.APM.Common.Credentials.ApmUsernamePasswordCredential",
"properties": {
"Name": "Credential Name",
"Username": "New Username",
"Password": "New Password"
},
"owner": "APM"
}
Returns credentialId if the operation is successful
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.Credential/UpdateCredentials
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"id": 17,
"properties": {
"Username": "Updated Username",
"Password": "Updated Password"
}
}
Returns null if the operation is successful.
To create an application it is needed to provide applicationSettings related to AppInsight for SQL template.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.SqlServerApplication/CreateApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"nodeId": 1,
"applicationTemplateId": 13,
"credentialSetId": 9,
"skipIfDuplicate": true,
"applicationSettings": {
"PortType": "default"
}
}
Or
{
// Other fields
"applicationSettings": {
"PortType": "static",
"PortNumber": "1433",
}
}
Returns applicationId if the application was created.
Returns -1 if the application already exists.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.SqlServerApplication/DeleteApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 1
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.SqlServerApplication/PollNow
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 1
}
Returns null if the operation is successful.
To unmanage the application you need to provide netObjectId. It consists of 2 parts NetObjectType for Application (AA) and ApplicationId.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.SqlServerApplication/Unmanage
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"netObjetId": "AA:1",
"unmanageTime": "2024-02-19T18:16:16.113Z",
"remanageTime": "2024-02-20T18:16:16.113Z",
"isRelative": true
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.SqlServerApplication/Remanage
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"netObjetId": "AA:1"
}
Returns null if the operation is successful.
To create an application it is needed to provide applicationSettings related to AppInsight for IIS template.
https://{IP}:17774/SolarWinds/InformationService/v3/JsonInvoke/Orion.APM.IIS.Application/CreateApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"nodeId": 2,
"applicationTemplateId": 11,
"credentialSetId": 10,
"skipIfDuplicate": true,
"applicationSettings": {
"NodeIpAddress": "Target Node Ip address",
"PsUrlWindowsValue": "https://${IP}:5986/wsman/"
}
}
Returns applicationId if the application was created.
Returns -1 if the application already exists.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.IIS.Application/DeleteApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 2
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.IIS.Application/ScheduleConfiruation
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 2,
"credentialsId": 10
}
Returns executionKey if the operation is successful.
solarwinds.apm.remoteiisconfiguratorfull.exe-{node-ip}
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.IIS.Application/GetConfigurationResult
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"executionKey": "solarwinds.apm.remoteiisconfiguratorfull.exe-{node-ip}"
}
Returns ConfigurationResult if the operation is successful.
{
"IsFinished": true,
"ExitCode": 0,
"ErrorDescription": null
}
{
"IsFinished": true,
"ExitCode": 16013,
"ErrorDescription": "Unable to access the remote administrator share (Error code: 16013)"
}
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.IIS.Application/PollNow
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 2
}
Returns null if the operation is successful.
To unmanage the application you need to provide netObjectId. It consists of 2 parts NetObjectType for Application (AA) and ApplicationId.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.IIS.Application/Unmanage
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"netObjetId": "AA:2",
"unmanageTime": "2024-02-19T18:16:16.113Z",
"remanageTime": "2024-02-20T18:16:16.113Z",
"isRelative": true
}
Returns null if the operation is successful
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.IIS.Application/Remanage
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"netObjetId": "AA:2"
}
Returns null if the operation is successful
To create an application it is needed to provide applicationSettings related to AppInsight for Active Directory template.
https://{IP}:17774/SolarWinds/InformationService/v3/JsonInvoke/Orion.APM.ActiveDirectory.Application/CreateApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"nodeId": 3,
"applicationTemplateId": 10,
"credentialSetId": 9,
"skipIfDuplicate": true,
"applicationSettings": {
"Port": "389",
"GCPort": "3268",
"EncryptionMethod": "0",
"AuthenticationMethod": "2",
"IgnoreCertificateErrors": "true"
}
}
Note
EncryptionMethod:
0 - None
1 - SSL
Note
AuthenticationMethod:
0 - Anonymus
1 - Simple
2 - Ntlm
3 - Kerberos
4 - Negotiate
Returns applicationId if the application was created.
Returns -1 if the application already exists.
The process of assigning the application is basically the same as creating an application. You need to provide application settings in xml format. Instead of applicationSettings we use serializedSettings.
https://{IP}:17774/SolarWinds/InformationService/v3/JsonInvoke/Orion.APM.ActiveDirectory.Application/AssignApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"nodeId": 3,
"serializedSettings": "Active Directory Settings in XML format"
}
<Settings xmlns="http://schemas.datacontract.org/2004/07/SolarWinds.APM.BlackBox.ActiveDirectory.Common.Models" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<settings xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:Key>CredentialSetId</a:Key>
<a:Value xmlns:b="http://schemas.solarwinds.com/2007/08/APM">
<b:Required>false</b:Required>
<b:SettingLevel>Instance</b:SettingLevel>
<b:Value>9</b:Value>
<b:ValueType>String</b:ValueType>
<b:Key>CredentialSetId</b:Key>
</a:Value>
</a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:Key>__Timeout</a:Key>
<a:Value xmlns:b="http://schemas.solarwinds.com/2007/08/APM">
<b:Required>true</b:Required>
<b:SettingLevel>Template</b:SettingLevel>
<b:Value>1800</b:Value>
<b:ValueType>String</b:ValueType>
<b:Key>__Timeout</b:Key>
</a:Value>
</a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:Key>Port</a:Key>
<a:Value xmlns:b="http://schemas.solarwinds.com/2007/08/APM">
<b:Required>true</b:Required>
<b:SettingLevel>Instance</b:SettingLevel>
<b:Value>389</b:Value>
<b:ValueType>String</b:ValueType>
<b:Key>Port</b:Key>
</a:Value>
</a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:Key>GCPort</a:Key>
<a:Value xmlns:b="http://schemas.solarwinds.com/2007/08/APM">
<b:Required>true</b:Required>
<b:SettingLevel>Instance</b:SettingLevel>
<b:Value>3268</b:Value>
<b:ValueType>String</b:ValueType>
<b:Key>GCPort</b:Key>
</a:Value>
</a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:Key>AuthenticationMethod</a:Key>
<a:Value xmlns:b="http://schemas.solarwinds.com/2007/08/APM">
<b:Required>true</b:Required>
<b:SettingLevel>Instance</b:SettingLevel>
<b:Value>Ntlm</b:Value>
<b:ValueType>String</b:ValueType>
<b:Key>AuthenticationMethod</b:Key>
</a:Value>
</a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:Key>EncryptionMethod</a:Key>
<a:Value xmlns:b="http://schemas.solarwinds.com/2007/08/APM">
<b:Required>true</b:Required>
<b:SettingLevel>Instance</b:SettingLevel>
<b:Value>None</b:Value>
<b:ValueType>String</b:ValueType>
<b:Key>EncryptionMethod</b:Key>
</a:Value>
</a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:KeyValueOfstringSettingValueyR_SGpLPx>
<a:Key>IgnoreCertificateErrors</a:Key>
<a:Value xmlns:b="http://schemas.solarwinds.com/2007/08/APM">
<b:Required>true</b:Required>
<b:SettingLevel>Instance</b:SettingLevel>
<b:Value>True</b:Value>
<b:ValueType>Boolean</b:ValueType>
<b:Key>IgnoreCertificateErrors</b:Key>
</a:Value>
</a:KeyValueOfstringSettingValueyR_SGpLPx>
</settings>
</Settings>
Returns applicationId if the application was created.
Returns -1 if the application already exists.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.ActiveDirectory.Application/DeleteApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 3
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.ActiveDirectory.Application/DisableDomainComponents
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 3
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.ActiveDirectory.Application/DeleteDisabledComponentsData
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 3
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.ActiveDirectory.Application/PollNow
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 3
}
Returns null if the operation is successful.
To unmanage the application you need to provide netObjectId. It consists of 2 parts NetObjectType for Application (AA) and ApplicationId.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.ActiveDirectory.Application/Unmanage
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"netObjetId": "AA:3",
"unmanageTime": "2024-02-19T18:16:16.113Z",
"remanageTime": "2024-02-20T18:16:16.113Z",
"isRelative": true
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.ActiveDirectory.Application/Remanage
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"netObjetId": "AA:3"
}
Returns null if the operation is successful.
To create an application it is needed to provide applicationSettings related to AppInsight for Exchange template.
https://{IP}:17774/SolarWinds/InformationService/v3/JsonInvoke/Orion.APM.Exchange.Application/CreateApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"nodeId": 4,
"applicationTemplateId": 12,
"credentialSetId": 14,
"skipIfDuplicate": true,
"applicationSettings": {
"PsUrlWindows": "https://${IP}:5986/wsman/",
"PsUrlExchange": "https://${IP}/powershell/"
}
}
Returns applicationId if the application was created.
Returns -1 if the application already exists.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.Exchange.Application/DeleteApplication
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 4
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.Exchange.Application/ScheduleConfiruation
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 4,
"credentialsId": 14,
}
Returns executionKey if the operation is successful.
solarwinds.apm.remotewinrmconfiguratorfull.exe-{node-ip}
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.Exchange.Application/GetConfigurationResult
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"executionKey": "solarwinds.apm.remotewinrmconfiguratorfull.exe-{node-ip}"
}
Returns ConfigurationResult if the operation is successful.
{
"IsFinished": true,
"ExitCode": 0,
"ErrorDescription": null
}
{
"IsFinished": true,
"ExitCode": 16013,
"ErrorDescription": "Unable to access the remote administrator share (Error code: 16013)"
}
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.Exchange.Application/PollNow
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"applicationId": 4
}
Returns null if the operation is successful.
To unmanage the application you need to provide netObjectId. It consists of 2 parts NetObjectType for Application (AA) and ApplicationId.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.Exchange.Application/Unmanage
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"netObjetId": "AA:4",
"unmanageTime": "2024-02-19T18:16:16.113Z",
"remanageTime": "2024-02-20T18:16:16.113Z",
"isRelative": true
}
Returns null if the operation is successful.
https://{IP}:17774/SolarWinds/InformationService/v3/Json/Invoke/Orion.APM.Exchange.Application/Remanage
Authorization: {{basicAuthorization}}
Content-Type: application/json
{
"netObjetId": "AA:4"
}
Returns null if the operation is successful.
- About SWIS
- Connecting to SWIS
- SWQL Functions
- REST
- PowerShell
- Alerts
- Creating custom properties
- Poller Types
- Network Performance Monitor
- NetFlow Traffic Analyzer
- Network Configuration Manager
- IP Address Manager
- Server & Application Monitor
- Log Analyzer
- Schema reference