Collector 'Alibaba Cloud-elasticsearch' Configuration Manual¶
Before reading this document, please read:
Tip
Before using this collector, you must install the "Integration Core Package" and its accompanying third-party dependencies.
1. Configuration Structure¶
The configuration structure of this collector is as follows:
| Field | Type | Required | Description |
|---|---|---|---|
regions |
list | Required | List of regions to be collected |
regions[#] |
str | Required | Region ID. For example: 'cn-hangzhou'See appendix for the complete list |
2. Configuration Examples¶
Specify Region¶
Collect data from the Hangzhou region
Configure Filter (Optional)¶
This collector script supports custom filters, allowing users to filter target resources based on object attributes. The filter function returns True|False - True: The target resource should be collected. - False: The target resource should not be collected.
Supported object attributes for filtering:
| Attribute | Description |
|---|---|
| instanceId | Instance ID |
| bucket_type | Instance version |
| paymentType | Instance payment type |
| resourceGroupId | Resource group ID |
| serviceVpc | Whether it is a service VPC |
| status | Instance status |
# Example: Enable filter and filter based on instanceId and paymentType attributes, the configuration format is as follows:
def filter_instance(instance):
'''
return True|False
'''
instance_id = instance['instanceId']
payment_type = instance['paymentType']
if instance_id in ['xxx'] and payment_type in ['postpaid']:
return True
return False
###### Do not modify the following contents #####
from integration_core__runner import Runner
import integration_alibabacloud_elasticsearch__main as main
def run():
Runner(main.DataCollector(account, collector_configs, filters=[filter_instance])).run()
3. Data Reporting Format¶
After data is synchronized normally, you can view the data in the "Infrastructure - Resource Catalog" of TrueWatch.
An example of reported data is as follows:
{
"measurement": "aliyun_elasticsearch",
"tags": {
"RegionId" : "cn-hangzhou",
"esVersion" : "7.4.0_with_X-Pack",
"instanceId" : "es-cn-xxxx",
"name" : "es-cn-xxxx",
"paymentType" : "prepaid",
"resourceGroupId": "rg-acfm2l3p7xxxx",
"serviceVpc" : "True",
"status" : "active"
},
"fields": {
"advancedDedicateMaster": false,
"createdAt" : "2021-04-07T06:10:50.527Z",
"extendConfigs" : "[ {Cluster extension parameter configuration JSON data}, ...]",
"message" : "{Instance JSON data}"
}
}
Partial parameter descriptions:
paymentType (Instance payment type) values:
| Value | Description |
|---|---|
postpaid |
Pay-as-you-go |
prepaid |
Subscription |
status (Instance status) values:
| Value | Description |
|---|---|
active |
Normal |
activating |
Activating |
inactive |
Frozen |
invalid |
Invalid |
Note
Tags and fields may change with subsequent updates.
Tip
The value of tags.name is the instance ID, which serves as a unique identifier. fields.message is a JSON serialized string.
X. Appendix¶
Please refer to the official Alibaba Cloud documentation: