Protocolo de comunicação e integração
Esta documentação define o modelo de payload para publicação de eventos em sistemas de streaming como RabbitMQ e Kafka, e detalha as adaptações necessárias para aplicações legadas, destacando os campos obrigatórios e opcionais. Para aplicações externas, é essencial que o payload siga o mesmo formato e inclua as informações especificadas, garantindo compatibilidade e monitoramento eficiente. Embora a integração nativa seja opcional, recomenda-se para maximizar os benefícios da Devprime em todo o ecossistema de aplicações.
Estrutura do Payload padrão do Evento
|
|
Descrição dos Campos
| Campo | Tipo | Descrição | Obrigatoriedade |
|---|---|---|---|
| Headers | object |
Contém headers adicionais, pode ser usado para transportar metadados específicos. | Opcional |
| Id | string (GUID) |
Identificador Guid único do evento gerado pela aplicação legada ao criar um novo evento. | Obrigatório |
| CorrelationId | string (GUID) |
Identificador Guid usado para correlacionar eventos e deve ser gerado pela aplicação legada. | Obrigatório |
| TraceId | string (GUID) |
Identificador Guid de rastreamento, útil para tracing distribuído. | Obrigatório |
| AppId | string (GUID) |
Identificador Guid fixo da aplicação legada que gera o evento. | Obrigatório |
| AppName | string |
Nome da aplicação que está publicando o evento. Exemplo: “Integrador 1.0”. | Obrigatório |
| Version | integer |
Versão do evento. Normalmente incrementado em caso de mudanças no formato do payload. | Obrigatório |
| Name | string |
Nome do evento. Exemplo: “OrderCreated”. | Obrigatório |
| CreateDate | string (DateTime) |
Data e hora da criação do evento, no formato ISO 8601. | Obrigatório |
| Payload | object (JSON) |
JSON contendo os dados do evento. | Obrigatório |
Exemplos de Uso
Payload Completo (Recomendado)
Este exemplo inclui todos os campos necessários para uma rastreabilidade completa e integração adequada com o sistema de observabilidade:
|
|
Payload Reduzido (Opcional)
Este exemplo omite alguns campos para uma implementação mais simples para casos em que a rastreabilidade não é necessária:
|
|
Considerações Finais
Ao implementar o padrão de payload descrito acima permitirá que aplicações legadas e externas interajam de forma eficaz com a plataforma Devprime, garantindo que eventos sejam monitorados e rastreados adequadamente durante todo o processo de homologação e produção. É altamente recomendável que os desenvolvedores sigam as orientações para garantir a compatibilidade e a eficiência da integração.
Para saber mais:
Última modificação September 12, 2024 (e8cc11e9)