-
Notifications
You must be signed in to change notification settings - Fork 5
SolarWinds
Anton Zelenin edited this page Apr 26, 2022
·
12 revisions
-
SolarWinds API URL - a URL to access SolarWinds API, example
https://sw-api:17778
- Username
- Password
- Query timeout - SolarWinds query timeout
> agent source create -a
Choose source (influx, kafka, mongo, mysql, postgres, elastic, ..., solarwinds): solarwinds
Enter a unique source name: solarwinds_1
SolarWinds API URL: https://solarwinds:17778
SolarWinds API username []: username
SolarWinds API password []: password
Query timeout (in seconds) [15]:
Source config created
Property | Type |
---|---|
type |
String |
name |
String |
config |
Object |
All properties are required
Property | Type | Required |
---|---|---|
url | String | yes |
username | String | yes |
password | String | yes |
query_timeout | Integer | no |
Example
[
{
"name": "test_solarwinds",
"type": "solarwinds",
"config": {
"url": "http://solarwinds:17778",
"username": "admin",
"password": "admin"
}
}
]
- Pipeline ID - unique pipeline identifier (use a human-readable name so you could easily use it further)
- Query to export data from SolarWinds - Query to export data from SolarWinds
- Delay - Collect data with a specified delay, e.g. the pipeline will retrieve data until now -(minus) delay, it will not fetch the latest data immediately
- Collect since - Collect data starting N days ago
- Query interval - Query data every N seconds
- Timestamp config
- Timestamp property name
-
Timestamp property type
unix
-
string
(must specify format) -
unix_ms
(unix timestamp in milliseconds) -
unix
(unix timestamp in seconds) -
datetime
date type in elasticsearch
-
- Timestamp format string - if timestamp property type is string - specify format according to this spec. Test here
- Count records - to include the number of records as a separate metric, default false
- Name of a field containing metric value with target type. Example - field1:counter field2:gauge
-
Metric names - key-value pairs separated with spaces, format
column_name:what
-
Required dimensions - Names of properties delimited with spaces. If these fields are missing in a record, it goes to the error stage. Format -
dimension1 dimension2
-
Optional dimensions - Names of properties delimited with spaces. These fields may be missing in a record. Format -
dimension1 dimension2
-
Static dimensions - dimensions with static values to pass to Anodot. Format -
key1:value1 key2:value2
- Tags
> agent pipeline create -a
Choose source config (solarwinds_test) [solarwinds_1]:
Pipeline ID (must be unique): solarwinds_1
Query to export data from SolarWinds: SELECT TOP 1000 NodeID, DateTime, MinMemoryUsed, AvgPercentMemoryUsed FROM Orion.CPULoad WHERE {TIMESTAMP_CONDITION}
Delay (in minutes): 5
Collect since (days ago) []: 3
Query interval (in seconds): 300
Timestamp property name: DateTime
Timestamp property type: string
Timestamp format string: yyyy-MM-dd'T'HH:mm:ss
Count records?: n
Name of a field containing metric value with target type. Example - field1:counter field2:gauge: MinMemoryUsed:gauge AvgPercentMemoryUsed:gauge
Metric names. Example - field1:new_name1 field2:new_name2: MinMemoryUsed:MinMemoryUsed AvgPercentMemoryUsed:AvgPercentMemoryUsed
Required dimensions: NodeID
Optional dimensions:
Static dimensions:
Tags:
Created pipeline solarwinds_1
Would you like to see the result data preview? [Y/n]: n
Required | Property name in config file | Value type | Description |
---|---|---|---|
yes | source |
String | Source name |
yes | pipeline_id |
String | Unique human-readable pipeline identifier |
yes | query |
String | A MySQL query to fetch data from SolarWinds databse |
no | days_to_backfill |
Integer | Collect data starting N days ago |
yes | interval |
Integer | How often to read the data from rrd files, unit - seconds |
no | delay |
Integer | Amount of time to wait before fetching data, units - seconds |
yes | timestamp |
Object with key-value pairs | |
no | count_records |
Boolean | |
yes | values |
Object with key-value pairs | |
yes | measurement_names |
Object with key-value pairs | |
no | dimensions |
Object with key-value pairs | Names of columns that will be used as dimensions, columns may only be strings |
no | tags |
Object with key-value pairs | Metric tags |
no | properties |
Object with key-value pairs | Dimensions with static values to pass to Anodot |
Property | Type | Description |
---|---|---|
type |
String |
string , unix or unix_ms
|
name |
String | Property name |
format |
String | Specify format if timestamp type is string |
Required properties are type
and name
Property | Type | Description |
---|---|---|
required |
List of strings | These properties are always present in a record |
optional |
List of strings | These properties may be missing in a record |
Simple:
[{
"source": "solarwinds_file",
"pipeline_id": "solarwinds_file",
"query": "SELECT TOP 1000 NodeID, DateTime, Archive, MinLoad, MaxLoad, AvgLoad, TotalMemory, MinMemoryUsed, MaxMemoryUsed, AvgMemoryUsed, AvgPercentMemoryUsed FROM Orion.CPULoad WHERE {TIMESTAMP_CONDITION}",
"delay": 0,
"days_to_backfill": 0,
"interval": 60,
"timestamp": {
"name": "DateTime",
"type": "string",
"format": "yyyy-MM-dd'T'HH:mm:ss"
},
"count_records": false,
"values": {
"MinMemoryUsed": "gauge",
"AvgPercentMemoryUsed": "gauge"
},
"measurement_names": {
"MinMemoryUsed": "MinMemoryUsed",
"AvgPercentMemoryUsed": "AvgPercentMemoryUsed"
},
"dimensions": {
"required": ["NodeID"],
"optional": []
}
}]
- Home
- CLI reference
- API
- Kubernetes setup using Helm
- Podman setup
- Creating pipelines
- Test sources
- Data formats (JSON, CSV, AVRO, LOG)
- How to parse logs with grok patterns
- How to store sensitive information
- Automated pipelines creation
- Filtering
- Transformation files
- Fields
- DVP Configuration
- Integrations
- Sending events to Anodot