Configurações

A plataforma Devprime disponibiliza diversos parâmetros para a customização das configurações e adaptação às diversas necessidades das aplicações.

Ao iniciar o desenvolvimento de um novo microsserviço utilizando o Devprime CLI, será oferecido um projeto moderno de arquitetura de software com uma abordagem evolutiva. Os componentes contarão com comportamentos inteligentes e parâmetros para a customização do comportamento da aplicação e dos Adapters.

Abrindo as configurações pelo Visual Studio Code
code src/App/appsettings.json

Item
App A sessão App reúne as configurações principais da aplicação, incluindo a chave de licença, os modos de Debug com logs detalhados, configurações para ambientes multi-inquilinos em SaaS e a Idempotência.
Web A sessão Web reúne as configurações, como os endpoints expostos, a ativação do Swagger, os códigos de erro HTTP padrões, a exibição de detalhes de requisições HTTP e o tratamento de requisições inválidas (BadRequest).
State A seção State reúne as configurações de banco de dados, cache e armazenamento com as credenciais de acesso, além de configurações de timeout, retry e circuit-break. Isso ocorre porque a plataforma Devprime oferece esses recursos automaticamente para os serviços configurados. Por exemplo, você pode configurar um item com o MongoDB e outro com o Redis, pois a Devprime adota uma abordagem de persistência poliglota.
Stream A seção Stream reúne as configurações e credenciais de acesso à plataforma de Stream, bem como configurações de timeout, retry e circuit-break, uma vez que a plataforma Devprime oferece esses recursos automaticamente para os serviços configurados. Você pode, por exemplo, configurar um item com o RabbitMQ e outro com o Kafka na mesma aplicação, pois a Devprime oferece uma abordagem multi-stream.
Services A seção Services reúne as configurações e credenciais de acesso a APIs externas, sejam elas públicas ou privadas, que necessitam de autenticação. Além disso, engloba configurações de timeout, retry e circuit-break. Isso acontece porque a plataforma Devprime oferece esses recursos automaticamente para os serviços configurados. Por exemplo, ao habilitar o acesso a uma API externa, se ocorrer lentidão, o mecanismo de retry entrará em ação; caso o problema persista, o circuit-break entrará em operação.
Observability A seção Observability reúne as configurações para exibição dos Logs, incluindo o nome do microsserviço, data, hora, detalhes e trace distribuído. Essa seção também possibilita a exportação utilizando o OpenTelemetry e métricas.
Security A seção Security reúne as configurações de segurança utilizadas no projeto, como a proteção dos endpoints públicos da API ou páginas web, por meio de um provedor de identidade utilizando OAuth 2.0 / OIDC. Essa integração simplifica a conexão com serviços como Keycloak, Auth0, Azure AD, AWS Cognito, Google Security e outros.
Custom A seção Custom reúne as configurações personalizadas, permitindo que os parâmetros do desenvolvedor sejam customizados para a aplicação. Isso possibilita que todas as configurações adicionais e necessárias para o negócio estejam agrupadas e padronizadas em um único local, simplificando a manutenção desses parâmetros extras.

No ambiente de produção, esses parâmetros devem ser passados como variáveis de ambiente para os containers.

Nós recomendamos a utilização dos cofres disponíveis nos provedores de cloud, como Microsoft Azure, Amazon AWS, Google Cloud, ou externos, como o HashiCorp Vault.


App

A sessão App reúne as configurações principais da aplicação, incluindo a chave de licença, os modos de Debug com logs detalhados, configurações para ambientes multi-inquilinos em SaaS e a Idempotência.

State

O Adapter de State é responsável pela persistência em banco de dados, cache e armazenamento na plataforma Devprime. O Adapter State pode ser personalizado com uma variedade de opções, incluindo MongoDB, SQL Server, MySQL, PostgreSQL, ElasticSearch, Oracle, Redis e outros parâmetros de armazenamento, como Azure Store, AWS S3, Google Cloud Storage, e muitos outros.

Web

A sessão Web reúne as configurações, como os endpoints expostos, a ativação do Swagger, os códigos de erro HTTP padrões, a exibição de detalhes de requisições HTTP e o tratamento de requisições inválidas (BadRequest).

Stream

O Stream Adapter oferece conectidade nativa com os principais serviços de Stream do mercado permitindo utilizar plataformas como RabbitMQ, Kafka e muitos outros serviços apenas trocando as informações na configuração habilitando uma rica experiência no desenvolvimento de microsserviços.

Observability

O adapter de Observability oferece Log automático, Trace distribuido no padrão OpenTemetry e Metrics. Nas configurações é possível desabilitar, definir configurações do Log no ambiente local de desenvolvimento.

Security

O adapter de security facilita a integração com Keycloak, Auth0 e outros provedores de identidade simplificando a adoção de segurança nas API’s e serviços Web.

Services

O adapter de services facilita a integração com serviços externos HTTP, gRPC, GraphQL além de integração com API’s seguras e suporte aos recursos de Retry e CircuitBreak.

Custom

Utilize o parâmetro custom para configurções personalizadaas da aplicação conforme a necessidade do projeto

Última modificação August 31, 2023 (273a3ae5)