> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Variáveis de ambiente

> Variáveis de ambiente definidas no deploy do Lerian SILOC — runtime, conectividade com a fila de liquidação do SILOC, persistência, autenticação e certificados.

O Lerian SILOC é a integração de mensageria nativa da Lerian para o SILOC, o sistema de liquidação diferida líquida do domínio de cartões operado pela Núclea. As variáveis abaixo são definidas no momento do deploy e exigem uma reinicialização do serviço para entrar em vigor. Para os parâmetros que se comportam da mesma forma em todos os serviços Go da Lerian — postura de deployment, telemetria e convenções de datastore — consulte a [referência de configuração BYOC](/pt/reference/byoc-configuration).

<Note>
  O Lerian SILOC é um serviço em estágio inicial. As variáveis documentadas aqui são a superfície de configuração atual verificada; espere que ela cresça à medida que o rail amadurece (por exemplo, um plano de configuração de runtime do systemplane está planejado mas ainda não exposto). Trate a própria referência de ambiente do serviço como a fonte da verdade para uma dada release.
</Note>

Nas tabelas abaixo, **Obrigatória** marca uma variável que deve ser definida (globalmente, ou sob a condição indicada). `—` significa que não há padrão.

## Runtime e servidor

| Variável          | Descrição                                                                                                                                                                                                               | Padrão            | Obrigatória |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- | ----------- |
| `SERVICE_NAME`    | Identificador de serviço usado em logs e telemetria.                                                                                                                                                                    | Padrão do serviço | Não         |
| `ENV_NAME`        | Rótulo do ambiente de runtime. `production` arma os controles mais estritos de autenticação e TLS abaixo.                                                                                                               | `development`     | Não         |
| `DEPLOYMENT_MODE` | Postura de enforcement de TLS (`local`, `byoc`, `saas`). `saas` torna o TLS obrigatório e se recusa a iniciar sem ele. Consulte [Modo de deployment e TLS](/pt/reference/byoc-configuration#modo-de-implantação-e-tls). | —                 | Não         |
| `LOG_LEVEL`       | Verbosidade dos logs (`debug`, `info`, `warn`, `error`).                                                                                                                                                                | `info`            | Não         |
| `SERVER_PORT`     | Porta de escuta HTTP. As probes de liveness e readiness se vinculam a essa mesma porta.                                                                                                                                 | `9820`            | Não         |

## Autenticação

O Lerian SILOC autoriza rotas protegidas através do Access Manager, e é default-closed: a autenticação fica ligada a menos que explicitamente desabilitada.

| Variável       | Descrição                                                                                      | Padrão | Obrigatória |
| -------------- | ---------------------------------------------------------------------------------------------- | ------ | ----------- |
| `AUTH_ENABLED` | Exige autenticação via Access Manager em rotas protegidas. Deve ser `true` em produção e SaaS. | `true` | Em produção |
| `AUTH_ADDRESS` | Endereço do serviço Access Manager. Deve ser uma URL `https://` válida em produção e SaaS.     | —      | Em produção |

## PostgreSQL

A réplica usa o host primário como fallback quando `DB_REPLICA_HOST` não está definido (padrão single-node).

| Variável          | Descrição                                                                             | Padrão    | Obrigatória |
| ----------------- | ------------------------------------------------------------------------------------- | --------- | ----------- |
| `DB_HOST`         | Host do PostgreSQL.                                                                   | —         | Sim (real)  |
| `DB_PORT`         | Porta do PostgreSQL.                                                                  | `5432`    | Não         |
| `DB_USER`         | Usuário do banco de dados.                                                            | —         | Sim (real)  |
| `DB_PASSWORD`     | Senha do banco de dados. Sensível — injete no momento do deploy; nunca faça commit.   | —         | Sim (real)  |
| `DB_NAME`         | Nome do banco de dados.                                                               | —         | Sim (real)  |
| `DB_SSLMODE`      | Modo TLS do libpq. Use `require` ou mais forte em produção.                           | `disable` | Não         |
| `DB_REPLICA_HOST` | Host de réplica de leitura opcional. Usa `DB_HOST` como fallback quando não definido. | —         | Não         |

## Redis

| Variável         | Descrição                       | Padrão  | Obrigatória |
| ---------------- | ------------------------------- | ------- | ----------- |
| `REDIS_ADDRESS`  | Host e porta do Redis/Valkey.   | —       | Não         |
| `REDIS_PASSWORD` | Senha do Redis. Sensível.       | —       | Não         |
| `REDIS_DB`       | Número do banco de dados Redis. | `0`     | Não         |
| `REDIS_TLS`      | Habilita TLS para o Redis.      | `false` | Não         |

## Conectividade de liquidação do SILOC

O Lerian SILOC mantém uma única conexão IBM MQ com o queue manager de liquidação do SILOC da Núclea. Quando qualquer uma dessas variáveis é definida, todo o descritor de conexão é validado fail-closed na inicialização.

| Variável                | Descrição                                                                                                                                                                                     | Padrão  | Obrigatória       |
| ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | ----------------- |
| `MQ_HOST`               | Host do queue manager.                                                                                                                                                                        | —       | Sim (SILOC real)  |
| `MQ_PORT`               | Porta do listener do queue manager.                                                                                                                                                           | —       | Sim (SILOC real)  |
| `MQ_QUEUE_MANAGER`      | Nome do queue manager. Deve ser o queue manager de liquidação do SILOC da Núclea.                                                                                                             | —       | Sim (SILOC real)  |
| `MQ_CHANNEL`            | Canal de server-connection. Deve corresponder ao padrão de canal do SILOC da Núclea `C02992335.<ISPB>.1`, onde `<ISPB>` é o ISPB de 8 dígitos do participante.                                | —       | Sim (SILOC real)  |
| `MQ_SEND_QUEUE`         | Fila de envio de saída.                                                                                                                                                                       | —       | Sim (SILOC real)  |
| `MQ_RECEIVE_QUEUE`      | Fila de recebimento de entrada.                                                                                                                                                               | —       | Sim (SILOC real)  |
| `MQ_TLS_ENABLED`        | Habilita TLS mútuo no canal MQ. Deve ser `true` em produção.                                                                                                                                  | `false` | Em produção       |
| `MQ_SSL_KEY_REPOSITORY` | Caminho para o repositório de chaves GSKit (`MQSSLKEYR`) que dá suporte ao TLS do MQ. A chave privada fica aqui, nunca em uma variável de ambiente. Obrigatório quando `MQ_TLS_ENABLED=true`. | —       | Se TLS habilitado |

## Certificados

| Variável                  | Descrição                                                                                                                           | Padrão | Obrigatória |
| ------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- | ------ | ----------- |
| `CERT_READINESS_MIN_DAYS` | Mínimo de dias até o vencimento antes de a verificação de readiness do certificado reportar estado degradado. Deve ser maior que 0. | `30`   | Não         |

## Observabilidade

| Variável                      | Descrição                                | Padrão  | Obrigatória              |
| ----------------------------- | ---------------------------------------- | ------- | ------------------------ |
| `ENABLE_TELEMETRY`            | Habilita a instrumentação OpenTelemetry. | `false` | Não                      |
| `OTEL_EXPORTER_OTLP_ENDPOINT` | Endpoint do coletor OTLP.                | —       | Se telemetria habilitada |

## Saúde e prontidão

O Lerian SILOC expõe `GET /health` (liveness), `GET /readyz` (readiness) e `GET /version` na porta HTTP principal. O serviço inicializa e serve essas probes mesmo antes de seus datastores e da conexão de liquidação estarem acessíveis; a saúde das dependências é reportada através do `/readyz`. Consulte [Saúde e prontidão](/pt/reference/health-and-readiness) para o contrato das probes.
