> ## 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.

# Operación de Lerian SRC

> Las verificaciones de readiness, la conexión IBM MQ, las credenciales y claves, los datos personales, los casos de operador, la configuración en tiempo de ejecución, el almacenamiento, las métricas y la postura de despliegue de Lerian SRC.

Lerian SRC lleva las consultas de tu institución a BACEN. Una instancia que no está lista es un evento operativo.

## Health y readiness

***

`GET /health` informa el liveness. `GET /readyz` ejecuta las verificaciones siguientes. Responde `503` cuando una verificación informa `down` o `degraded`, y mientras el servicio se apaga.

| Verificación | Qué comprueba |
| - | - |
| `postgres` | La base de datos PostgreSQL. |
| `outbox_dispatcher` | El ciclo que publica los eventos desde el outbox. Informa `skipped` mientras la publicación de eventos está retenida, por ejemplo sin broker. |
| `src_mq` | La conexión IBM MQ que lleva las consultas. |
| `custody` | El proveedor PKCS#11 o KMIP. |
| `trust_anchor` | El certificado de BACEN. |
| `license` | El servidor de licencias de Lerian. |
| `runtime_config` | El almacén de la configuración en tiempo de ejecución. |
| `declaration` | La declaración de permisos a Access Manager. Informa `skipped` mientras `IDP_DECLARATION_ENABLED` es `false`. |
| `startup_self_probe` | La autoverificación de arranque del servicio. |

`GET /version` devuelve la versión del build del servicio.

## IBM MQ

***

Lerian SRC se conecta al gestor de colas IBM MQ propio de tu institución. Ese gestor de colas llega a BACEN por la RSFN.

Define `SRC_MQ_HOST`, `SRC_MQ_PORT`, `SRC_MQ_CHANNEL` y `SRC_MQ_QUEUE_MANAGER`. Lerian SRC no aplica un valor predeterminado para el puerto y el canal, así que pídelos a tu equipo de IBM MQ.

Lerian SRC deriva los nombres de las colas de `SRC_CNPJ_BASE8`:

* Cola de envío: `QR.REQ.<CNPJ base>.00038166.03`.
* Cola de recepción: `QL.RSP.00038166.<CNPJ base>.03`.

Define `SRC_MQ_SEND_QUEUE` y `SRC_MQ_RECEIVE_QUEUE` solo cuando tu gestor de colas usa otros nombres.

Mientras `SRC_MQ_BACKOUT_THRESHOLD` es mayor que `0`, un mensaje que falla la entrega esa cantidad de veces pasa a la cola de backout. El umbral predeterminado es 5. La cola de backout es el nombre de la cola de recepción seguido de `.BACKOUT`, a menos que definas `SRC_MQ_BACKOUT_QUEUE`. Lerian SRC abre la cola de backout cuando se conecta, así que créala en el gestor de colas antes de iniciar el servicio.

Cuando ninguna llamada a IBM MQ se completa durante `SRC_MQ_STALE_AFTER`, 30 segundos de forma predeterminada, la verificación `src_mq` informa `degraded`.

La imagen de Lerian SRC se ejecuta en `linux/amd64`.

## Credenciales y claves

***

Lerian SRC firma cada mensaje que envía a BACEN con la clave privada de tu institución. Usa el certificado de BACEN para proteger cada mensaje para BACEN.

Lerian SRC usa la clave privada a través de PKCS#11 o KMIP. Cuando configuras los dos, usa PKCS#11. Define `SRC_LOCAL_CERT_FILE` con el certificado de tu institución para esa clave, y `SRC_BACEN_CERT_FILE` con el certificado de BACEN. Después de reemplazar el certificado de BACEN, reinicia Lerian SRC.

`GET /v1/src/credentials` devuelve el estado de la credencial.

## Datos personales

***

Las listas, los resultados de búsqueda y los eventos muestran el documento de la persona enmascarado, en `documentMasked`. La pista de evidencias devuelve el registro completo, incluido el documento. Lerian SRC registra cada lectura de la pista de evidencias en la misma transacción que la lectura. Si no puede registrar la lectura, la lectura falla.

<h2 id="operator-cases">
  Casos de operador
</h2>

***

`GET /v1/src/operator/cases` lista los casos abiertos, del más reciente al más antiguo. Envía `status=closed` para los casos cerrados, o `status=all` para ambos. [Cómo funciona Lerian SRC](/es/rails/src/how-src-works#operator-cases) explica los legs.

Cierra un caso con la operación de su leg:

| Leg | Operación |
| - | - |
| `orphan_response` | `POST /v1/src/operator/orphan-responses/{caseId}/closure` |
| `invalid_outbound` | `POST /v1/src/operator/invalid-dispatches/{caseId}/closure` |

Un caso `budget_exhausted` tiene `closable` definido como `false`. El cierre de un caso que no está abierto devuelve `404` con el código `SRC-0301`.

Vigila dos números en `GET /v1/src/dashboard/consultations`:

* `openOperatorCases`: los casos de operador que están abiertos ahora.
* `pendingBeyondExpected`: las consultas que siguen en `pending` más tiempo que `src.pending.alert_threshold`, 15 minutos de forma predeterminada.

## Configuración en tiempo de ejecución (Systemplane)

***

Lerian SRC sirve su API de administración de la configuración en tiempo de ejecución en `/v1/system`. [Autenticación y permisos](/es/rails/src/src-integration#authentication-and-permissions) indica el permiso que necesita. La API de administración acepta 30 solicitudes por minuto de cada dirección IP de cliente.

Un cambio toma efecto sin un reinicio. Las tablas listan las claves que ajustan las consultas, los reintentos, los rate limits y la retención. Consulta [System plane](/es/reference/platform/systemplane/overview).

**Namespace `tenant_policy`**

| Clave | Qué controla | Predeterminado | Rango |
| - | - | - | - |
| `src.channel.active` | El canal que lleva las consultas a BACEN. | `messaging` | `messaging` |
| `src.consultation.protection_types` | Los tipos de protección que puede llevar una consulta. Una solicitud con otro tipo devuelve `422`. | `account_opening,ownership_change` | `account_opening`, `ownership_change` |
| `src.pending.alert_threshold` | Cuánto tiempo puede seguir una consulta en `pending` antes de que `pendingBeyondExpected` la cuente. | `15m` | `1m` a `168h` |

**Namespace `runtime_config`**

| Clave | Qué controla | Predeterminado | Rango |
| - | - | - | - |
| `src.dispatch.max_attempts` | Intentos para cada consulta. | `8` | 1 a 20 |
| `src.dispatch.backoff_initial` | Espera antes del primer reintento. | `1m` | `1s` a `1h` |
| `src.dispatch.backoff_ceiling` | Espera más larga entre dos intentos. | `30m` | `1m` a `24h` |
| `src.log.level` | Nivel de log. | `INFO` | `DEBUG`, `INFO`, `WARN`, `ERROR` |
| `src.rate_limit.ip_max` | Solicitudes que una dirección IP de cliente puede enviar en cada ventana, en cada réplica. | `6000` | 1 a 1000000 |
| `src.rate_limit.ip_window` | Duración de la ventana del rate limit. | `1m` | `1s` a `1h` |
| `src.retention.transient_purge_age` | Antigüedad a partir de la cual la limpieza puede eliminar una clave de idempotencia. | `24h` | `1h` a `720h` |
| `src.retention.transient_purge_batch` | Claves de idempotencia que elimina una sentencia de purga. | `1000` | 100 a 10000 |
| `src.retention.resolved_orphan_payload_purge_age` | Cuánto tiempo un caso de respuesta huérfana cerrado conserva el mensaje que recibió Lerian SRC. | `8760h` | `24h` a `8760h` |

## Almacenamiento, outbox y retención

***

Lerian SRC almacena su estado en PostgreSQL.

Los eventos salen por una tabla de outbox, en la misma transacción que el cambio que informan. Sin broker, los eventos quedan pendientes en el outbox.

La limpieza de retención elimina las claves de idempotencia más antiguas que `src.retention.transient_purge_age`, 24 horas de forma predeterminada.

Lerian SRC no aplica su propio esquema de base de datos. La imagen `br-src-migrations` lo aplica. Ejecuta esa imagen antes de iniciar la imagen `br-src`.

## Métricas y trazas

***

Define `ENABLE_TELEMETRY=true` para exportar trazas y métricas por OTLP a `OTEL_EXPORTER_OTLP_ENDPOINT`. Lerian SRC no tiene un endpoint `/metrics`. Consulta [Observabilidad](/es/platform/observability) para la vista de la plataforma.

## Postura de despliegue

***

`DEPLOYMENT_MODE` acepta `local`, `byoc` o `saas`. Un despliegue atiende a una institución.

[Variables de entorno](/es/rails/src/src-environment-variables) define un despliegue de producción y marca cada configuración que este exige. Una configuración obligatoria que falta detiene el arranque.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.