Skip to main content
O Systemplane permite ver e alterar as configurações do Matcher que têm suporte sem reiniciar o serviço. O comportamento de aplicação varia conforme a chave: configurações de tempo de requisição podem valer na próxima requisição, enquanto uma recarga de configuração para e reinicia um worker em execução quando a configuração dele muda.

Por que usar o Systemplane


Em um deploy tradicional, mudar um valor de configuração significa atualizar variáveis de ambiente e reiniciar o serviço. O Systemplane elimina esse tempo de indisponibilidade para muitas configurações:
  • Ajuste rate limits durante picos de tráfego sem um novo deploy
  • Calibre os intervalos dos workers conforme a carga observada. Uma recarga de configuração realinha o worker afetado e o reinicia quando a configuração em execução dele muda
  • Atualize o número máximo de pools de tenant conforme os padrões de tráfego mudam. As configurações de conexões por pool do PostgreSQL exigem mudança de ambiente e reinicialização
  • Inspecione os valores atuais em tempo de execução para diagnosticar problemas de produção sem vasculhar logs

Como funciona


O Systemplane oferece uma API de gerenciamento plana no formato chave-valor. Todas as chaves de configuração ficam em um único namespace sob /system/matcher.

Endpoints

A instância do Matcher em execução serve esses endpoints diretamente. Eles não ficam sob /v1. Use os caminhos acima exatamente como mostrado.

Permissões


As rotas de configuração e de catálogo do Systemplane usam a mesma autenticação das rotas da API do Matcher. Com a autenticação habilitada, essas rotas exigem a permissão RBAC system-runtime-config:admin (recurso system-runtime-config, ação admin). GET /system/matcher/streaming/manifest é uma rota separada e exige streaming-manifest:read. Com a autenticação desabilitada, todos os endpoints ficam acessíveis sem restrição.

Comportamentos de aplicação


Você pode mudar apenas alguns valores de configuração em tempo de execução. Cada chave tem um comportamento de aplicação que indica quando as mudanças passam a valer: A API do systemplane NÃO registra a maioria das chaves que são apenas bootstrap. Você gerencia essas chaves exclusivamente por variáveis de ambiente. Isso evita uma armadilha em que um PUT de admin pareceria ter sucesso, mas o processo em execução continuaria usando o valor do boot em silêncio. As chaves registradas do Swagger são uma exceção: elas ficam visíveis no Systemplane, mas continuam sendo apenas bootstrap (veja a nota abaixo).

Chaves de configuração mais comuns


Abaixo estão as chaves que você ajusta com mais frequência, organizadas por categoria. Para a lista completa, chame GET /system/matcher.

Chaves ajustáveis em tempo de execução

Você pode mudar estas chaves sem reiniciar o Matcher:
swagger.enabled, swagger.host e swagger.schemes são registradas e ficam visíveis no Systemplane, mas não são controles ao vivo. O Matcher captura os valores de montagem do Swagger e dos handlers no bootstrap, então um PUT em tempo de execução não muda o comportamento da UI nem da especificação em execução. Em vez disso, mude a configuração de inicialização delas e reinicie o Matcher.

Chaves multi-tenant (ajustáveis em tempo de execução)

Estas chaves controlam o comportamento multi-tenant, e você pode ajustá-las sem reiniciar. Veja Modo multi-tenant para detalhes.
Habilitar o modo multi-tenant em si (tenancy.multi_tenant_enabled / MULTI_TENANT_ENABLED) é apenas bootstrap. O Matcher lê essa chave uma vez na inicialização. Mudar essa chave exige uma reinicialização. A API do Systemplane não registra ela, e você não pode ligar nem desligar essa chave em tempo de execução. Veja a tabela de chaves apenas bootstrap abaixo.

Chaves apenas bootstrap (exigem reinicialização)

A API do systemplane não registra estas chaves. Mude essas chaves por variáveis de ambiente e reinicie:

Boas práticas


Chame GET /system/matcher para ver todos os valores atuais em tempo de execução antes de fazer qualquer mudança. Isso confirma o que o processo usa de fato. Os valores podem divergir das variáveis de ambiente depois de chamadas PUT anteriores.
O comportamento de aplicação em tempo de execução varia conforme a chave, e mudanças em workers podem reiniciar o worker afetado. Teste em um ambiente de staging antes de aplicar em produção.
Se uma chave não aparece em GET /system/matcher, ela é apenas bootstrap. Atualize a variável de ambiente e reinicie o serviço. Não existe caminho em tempo de execução para esses valores. Uma chave visível ainda pode ser apenas bootstrap quando a documentação dela diz isso: as chaves registradas do Swagger aceitam um PUT em tempo de execução, mas passam a valer apenas depois de uma reinicialização.

Próximos passos


Modo multi-tenant

Habilite e configure o isolamento de tenants.

Roteamento de exceções

Configure o despacho de exceções para sistemas externos.

Regras de correspondência

Configure as regras de correspondência de transações.

Segurança

Autenticação, autorização e proteção de dados.