Envio do log das atividades
Configure um webhook para enviar os logs coletados ao final de cada atividade principal do Desktop Server.
O Desktop Server dispõe de um webhook que envia os logs coletados do começo ao fim de cada realização de uma das atividades principais, como pagamentos, cancelamentos e cargas de tabelas. Ao final da atividade, os logs são enviados em JSON no corpo de uma requisição HTTP POST para uma URL configurável. Apenas os logs de uma atividade são enviados por vez.
O webhook pode ser configurado remotamente por meio de uma requisição em JSON pela interface WebSocket.
Exemplo de configuração deste webhook
Requisitando ao servidor
Configure o webhook enviando uma requisição JSON com os seguintes campos:
{
"type": "webhook",
"activityLog": {
"dispatchUrl": "DISPATCH_URL"
}
}O campo activityLog.dispatchUrl deve conter a URL de destino completa, no formato {protocolo}://{domínio}[:{porta}][/{caminho}].
- Exemplo:
http://my.server.domain.com:port/sub/path. - Se esse campo estiver vazio, o webhook deixará de enviar o log das atividades até que a URL seja configurada novamente.
Envie a requisição por meio de WebSocket, como no exemplo abaixo em JavaScript:
let webhookRequest = {
type: "webhook",
activityLog: {
dispatchUrl: "https://your.server.domain.com:1234/sub/path"
// Use `dispatchUrl: ""` para desabilitar o webhook.
}
}
// Onde `socket` é um objeto de `WebSocket`.
socket.send(JSON.stringify(webhookRequest))
socket.onmessage = (event) => {
let response = JSON.parse(event.data)
if (response == null) {
return
}
if (response.type == "webhook") {
if (response.status == "success") {
// A configuração do webhook foi bem-sucedida.
// ...
return
}
if (response.status == "failed") {
// Falha na configuração do webhook.
// ...
return
}
}
// ...
}Respostas
O Desktop Server responderá em JSON, indicando em status:
success: sucesso da configuração do webhook;failed: falha da configuração do webhook e a causa.
Sucesso na configuração do webhook
Esta resposta sinaliza que a configuração do webhook foi bem-sucedida.
{
"type": "webhook",
"status": "success",
"message": ""
}Falha durante a configuração do webhook
Caso ocorra alguma falha durante o processo, a resposta será similar a esta:
{
"type": "webhook",
"status": "failed",
"message": "Falha na configuração de webhooks",
"statusCode": -1
}O valor de statusCode será o código do erro que ocasionou a falha, sendo -1 caso não haja um código para a causa.
Formato dos logs
O conjunto de logs de uma atividade é expressado como um objeto em JSON, como descrito em Log das atividades — Formato dos logs.
