Cria um shipper.
Depuração
Cabeçalhos da requisição
Esta operação utiliza apenas cabeçalhos de requisição comuns. Para mais informações, consulte Cabeçalhos de requisição comuns.
Sintaxe da requisição
POST /openapi/collectors HTTP/1.1
Parâmetros da requisição
|
Parâmetro |
Tipo |
Localização |
Obrigatório |
Exemplo |
Descrição |
|
clientToken |
String |
Query |
Não |
5A2CFF0E-5718-45B5-9D4D-70B3FF**** |
Token de cliente usado para garantir a idempotência da requisição. Gere o valor pelo cliente, mas garanta que seja único entre diferentes requisições. O token aceita apenas caracteres ASCII e não pode exceder 64 caracteres. |
|
Object |
Body |
Não |
Corpo da requisição. Especifica a configuração do collector a ser criado. |
||
|
dryRun |
Boolean |
Body |
Sim |
true |
Defina se deve verificar e criar um crawler. Use este parâmetro apenas ao criar ou atualizar um crawler. Valores válidos:
|
|
name |
String |
Body |
Sim |
ct-test |
Nome do collector. Deve ter de 1 a 30 caracteres, começar com uma letra e conter letras, dígitos, sublinhados (_) e hífens (-). |
|
resType |
String |
Body |
Sim |
fileBeat |
Tipo do collector. Valores válidos: fileBeat, metricBeat, heartBeat e auditBeat. |
|
vpcId |
String |
Body |
Sim |
vpc-bp12nu14urf0upaf* |
ID da Virtual Private Cloud (VPC) à qual o collector pertence. |
|
resVersion |
String |
Body |
Sim |
6.8.5_with_community |
Versão do collector. Valores válidos:
|
|
collectorPaths |
Array of String |
Body |
Não |
["/var/log"] |
Caminho de coleta do Filebeat. Obrigatório apenas quando o collector é implantado em instâncias ECS. |
|
configs |
Array |
Body |
Sim |
Arquivos de configuração do collector. |
|
|
fileName |
String |
Body |
Sim |
filebeat.yml |
Nome do arquivo. |
|
content |
String |
Body |
Sim |
"filebeat.inputs:xxx" |
Conteúdo do arquivo. |
|
extendConfigs |
Array of Object |
Body |
Sim |
{ "instanceId": "es-cn-nif201ihd0012**", "instanceType": "elasticsearch", "configType": "collectorTargetInstance", "hosts": [ "es-cn-nif201ihd0012.elasticsearch.aliyuncs.com:9200" ], "userName": "elastic", "password": "*", "protocol": "HTTP" }, { "type": "ECSInstanceId", "configType": "collectorDeployMachine", "machines": [ { "instanceId": "i-bp11u91xgubypcuz**" } ] } ] |
Configuração estendida do collector. Para mais informações, consulte a descrição do parâmetro extendConfigs abaixo. |
Descrição do parâmetro extendConfigs
A tabela a seguir descreve os parâmetros de extendConfigs.
|
Parâmetro |
Tipo |
Obrigatório |
Exemplo |
Descrição |
|
extendConfigs |
Array |
Configuração estendida do collector. |
||
|
└configType |
String |
Sim |
collectorElasticsearchForKibana |
Tipo de configuração. Valores válidos: collectorTargetInstance (saída do collector), collectorDeployMachine (máquina de implantação do collector) e collectorElasticsearchForKibana (instância Elasticsearch compatível com Kibana Dashboard). |
|
└type |
String |
Não |
ECSInstanceId |
Tipo da máquina de implantação. Valores válidos: ECSInstanceId (ECS) e ACKCluster (Container Kubernetes). Obrigatório quando configType está definido como collectorDeployMachine. |
|
└instanceType |
String |
Não |
elasticsearch |
Tipo da instância de saída. Valores válidos: Elasticsearch e logstash. Obrigatório quando configType está definido como collectorTargetInstance. |
|
└instanceId |
String |
Sim |
es-cn-nif201ihd0012**** |
ID da instância. Se configType estiver definido como collectorTargetInstance, este é o ID da instância de saída. Se configType estiver definido como collectorDeployMachines e type estiver definido como ACKCluster, este é o ID do cluster ACK. |
|
└machines |
Array |
Não |
Instâncias ECS onde o collector é implantado. Obrigatório quando configType é collectorDeployMachines e type é ECSInstanceId. |
|
|
└└instanceId |
String |
Sim |
i-bp11u91xgubypcuz**** |
ID da instância ECS. |
|
└groupId |
String |
default_ct-cn-5i2l75bz4776**** |
ID do grupo de hosts. Obrigatório quando configType está definido como collectorDeployMachine. |
|
|
└protocol |
String |
Não |
HTTP |
Protocolo de transmissão. Deve corresponder ao protocolo de acesso da instância de saída. Valores válidos: HTTP e HTTPS. Obrigatório quando configType está definido como collectorTargetInstance. |
|
└userName |
String |
Não |
elastic |
Nome de usuário para acessar a instância. Valor padrão: elastic. Obrigatório quando configType está definido como collectorTargetInstance ou collectorElasticsearchForKibana. |
|
└password |
String |
Não |
* |
Senha do nome de usuário. |
|
└enableMonitoring |
Boolean |
Não |
true |
Defina se o monitoramento deve ser ativado. Obrigatório quando configType é collectorTargetInstance e instanceType é Elasticsearch. Valores válidos: true (ativado) e false (desativado). |
|
└hosts |
List<String> |
Não |
["es-cn-nif201i*.elasticsearch.aliyuncs.com:9200"] |
Endereços de acesso da instância de saída. Obrigatório quando configType está definido como collectorTargetInstance. |
|
└host |
String |
Não |
es-cn-nif201ihd0012****-kibana.internal.elasticsearch.aliyuncs.com:5601 |
Endpoint privado do Kibana. Obrigatório quando configType está definido como collectorElasticsearchForKibana. |
|
└kibanaHost |
String |
Não |
https://es-cn-nif201ihd0012****.kibana.elasticsearch.aliyuncs.com:5601 |
Endpoint público do Kibana. Obrigatório quando configType está definido como collectorElasticsearchForKibana. |
└ indica um parâmetro filho.
O parâmetro extendConfigs suporta três valores de configType: collectorTargetInstance, collectorElasticsearchForKibana e collectorDeployMachine. Os parâmetros obrigatórios variam conforme o tipo de máquina de implantação:
-
collectorTargetInstance
-
ECS
configType, instanceId, instanceType, hosts, userName, password, protocol, enableMonitoring
-
ACK
configType, instanceId, instanceType, userName, password, protocol, enableMonitoring
-
-
collectorElasticsearchForKibana
-
ECS
configType, instanceId, host, kibanaHost, userName, password e protocol
-
ACK
configType
-
-
collectorDeployMachine
-
ECS
configType, type, machines e groupId
-
ACK
configType, type e instanceId
-
Parâmetros de resposta
|
Elemento |
Tipo |
Exemplo |
Descrição |
|
RequestId |
String |
8466BDFB-C513-4B8D-B4E3-5AB256AB**** |
ID da requisição. |
|
Result |
Object |
Resultado retornado. |
|
|
resId |
String |
ct-cn-4135is2tj194p**** |
ID do collector. |
Exemplos
Exemplos de requisições
POST /openapi/collectors?clientToken=5A2CFF0E-5718-45B5-9D4D-70B3FF**** HTTP/1.1
Host:elasticsearch.aliyuncs.com
Content-Type:application/json
{
"dryRun": false,
"name": "test_beats_1",
"resType": "fileBeat",
"resVersion": "6.8.5_with_community",
"vpcId": "vpc-bp12nu14urf0upaf*****",
"collectorPaths": [
"/var/log"
],
"extendConfigs": [
{
"instanceId": "es-cn-nif201ihd0012****",
"instanceType": "elasticsearch",
"configType": "collectorTargetInstance",
"hosts": [
"es-cn-nif201ihd0012****.elasticsearch.aliyuncs.com:9200"
],
"userName": "elastic",
"password": "*****",
"protocol": "HTTP"
},
{
"type": "ECSInstanceId",
"configType": "collectorDeployMachine",
"machines": [
{
"instanceId": "i-bp11u91xgubypcuz****"
}
]
}
],
"configs": [
{
"fileName": "filebeat.yml",
"content": "filebeat.inputs:xxx"
},
{
"fileName": "fields.yml",
"content": "- key: log\n title: Log file content\n description: >\n Contains log file lines.\n ...."
}
]
}
Exemplos de respostas de sucesso
JSON format
HTTP/1.1 200 OK
Content-Type:application/json
{
"Result" : {
"resId" : "ct-cn-4135is2tj194p****"
},
"RequestId" : "8466BDFB-C513-4B8D-B4E3-5AB256AB****"
}
Código de erro
Para obter uma lista de códigos de erro, consulte Códigos de erro do serviço.