Saltar al contenido principal

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.

Systemplane le permite ver y modificar la configuración de Matcher en tiempo de ejecución — sin reiniciar el servicio. En entornos financieros regulados, los tiempos de inactividad no planificados para aplicar cambios de configuración representan un riesgo de cumplimiento y una interrupción operacional. Systemplane elimina ese riesgo: los parámetros operacionales se pueden ajustar mientras el servicio continúa ejecutándose, manteniendo los procesos de conciliación sin interrupciones.

Por qué usar Systemplane


En un despliegue tradicional, cambiar un valor de configuración significa actualizar variables de entorno y reiniciar el servicio. Systemplane elimina ese tiempo de inactividad para muchas configuraciones:
  • Ajustar límites de tasa durante picos de tráfico sin redeploy — evitando interrupciones del servicio en momentos de alto volumen de transacciones
  • Ajustar intervalos de workers según los patrones de carga observados — optimizando el rendimiento de conciliación sin modificar la infraestructura
  • Actualizar tamaños de connection pool a medida que cambian los patrones de tráfico
  • Inspeccionar valores actuales en tiempo de ejecución para diagnosticar problemas en producción sin bucear en logs

Cómo funciona


Systemplane proporciona una API de gestión de clave-valor plana. Todas las claves de configuración están en un único namespace bajo /system/matcher.

Endpoints

EndpointMétodoQué hace
/system/matcherGETListar todas las claves y sus valores actuales
/system/matcher/:keyGETObtener el valor actual de una clave específica
/system/matcher/:keyPUTActualizar el valor de una clave específica
Estos endpoints son servidos directamente por la instancia de Matcher en ejecución. No están versionados bajo /v1 — use las rutas anteriores exactamente como se muestran.

Permisos


Los endpoints de Systemplane están protegidos por la misma autenticación utilizada por todas las rutas de la API de Matcher. Cuando la autenticación está habilitada, todos los endpoints /system requieren el permiso RBAC system:admin. Cuando la autenticación está deshabilitada, todos los endpoints son accesibles sin restricciones.

Comportamientos de aplicación


No todos los valores de configuración pueden cambiarse en tiempo de ejecución. Cada clave tiene un comportamiento de aplicación que indica cuándo surten efecto los cambios:
ComportamientoQué sucede
Solo bootstrapEl valor se lee una vez al inicio. Debe reiniciar el servicio para que los cambios surtan efecto.
Lectura en vivoLos cambios surten efecto inmediatamente en la próxima solicitud.
Reconstrucción de bundleLos cambios desencadenan una actualización de estado interno. Surte efecto en segundos.
Reconciliación de workerLos workers en segundo plano recogen el nuevo valor en su próximo ciclo.
Las claves que son solo bootstrap NO están registradas en la API de systemplane — se gestionan exclusivamente a través de variables de entorno. Esto evita que un PUT de administrador parezca exitoso mientras el proceso en ejecución continúa silenciosamente usando el valor del momento de arranque.

Claves de configuración comunes


A continuación se muestran las claves más comúnmente ajustadas, organizadas por categoría. Para una lista completa, llame a GET /system/matcher.

Claves ajustables en tiempo de ejecución

Estas claves pueden cambiarse sin reiniciar Matcher:
ClaveVariable de entornoDescripción
app.env_nameENV_NAMENombre del entorno de la aplicación
server.body_limit_bytesHTTP_BODY_LIMIT_BYTESTamaño máximo del cuerpo de solicitud HTTP
cors.allowed_originsCORS_ALLOWED_ORIGINSOrígenes CORS permitidos
cors.allowed_methodsCORS_ALLOWED_METHODSMétodos CORS permitidos
cors.allowed_headersCORS_ALLOWED_HEADERSCabeceras CORS permitidas
swagger.enabledSWAGGER_ENABLEDHabilitar o deshabilitar Swagger UI
swagger.hostSWAGGER_HOSTOverride del host de Swagger
swagger.schemesSWAGGER_SCHEMESEsquemas de URL de Swagger
rate_limit.enabledRATE_LIMIT_ENABLEDHabilitar o deshabilitar el límite de tasa global
rate_limit.maxRATE_LIMIT_MAXMáximo de solicitudes por ventana de límite de tasa
rate_limit.expiry_secRATE_LIMIT_EXPIRY_SECDuración de la ventana de límite de tasa (segundos)
rate_limit.export_maxEXPORT_RATE_LIMIT_MAXLímite de tasa del endpoint de exportación
rate_limit.dispatch_maxDISPATCH_RATE_LIMIT_MAXLímite de tasa del endpoint de dispatch
rate_limit.admin_maxADMIN_RATE_LIMIT_MAXLímite de tasa del plano admin (/system)
idempotency.retry_window_secIDEMPOTENCY_RETRY_WINDOW_SECVentana para reintentar solicitudes idempotentes fallidas
idempotency.success_ttl_hoursIDEMPOTENCY_SUCCESS_TTL_HOURSCuánto tiempo se almacenan en caché las claves de idempotencia completadas
fetcher.enabledFETCHER_ENABLEDHabilitar o deshabilitar el módulo Fetcher
fetcher.urlFETCHER_URLURL del servicio Fetcher
fetcher.discovery_interval_secFETCHER_DISCOVERY_INTERVAL_SECCon qué frecuencia Matcher consulta Fetcher para nuevas fuentes de datos
export_worker.enabledEXPORT_WORKER_ENABLEDHabilitar o deshabilitar el worker de exportación
export_worker.poll_interval_secEXPORT_WORKER_POLL_INTERVAL_SECCon qué frecuencia el worker de exportación verifica nuevos trabajos
cleanup_worker.enabledCLEANUP_WORKER_ENABLEDHabilitar o deshabilitar el worker de limpieza
cleanup_worker.interval_secCLEANUP_WORKER_INTERVAL_SECIntervalo del worker de limpieza
scheduler.interval_secSCHEDULER_INTERVAL_SECIntervalo de polling del scheduler
archival.enabledARCHIVAL_WORKER_ENABLEDHabilitar o deshabilitar el worker de archivado
webhook.timeout_secWEBHOOK_TIMEOUT_SECTimeout para el despacho de webhooks/callbacks
callback_rate_limit.per_minuteCALLBACK_RATE_LIMIT_PER_MINMáximo de callbacks por sistema externo por minuto
telemetry.enabledENABLE_TELEMETRYHabilitar OpenTelemetry
deduplication.ttl_secDEDUPE_TTL_SECTTL de deduplicación en segundos

Claves multi-tenant (ajustables en tiempo de ejecución)

Estas claves controlan el comportamiento multi-tenant y pueden ajustarse sin reinicio. Consulte Modo Multi-Tenant para más detalles.
ClaveVariable de entornoDescripción
tenancy.multi_tenant_enabledMULTI_TENANT_ENABLEDHabilitar infraestructura multi-tenant
tenancy.multi_tenant_urlMULTI_TENANT_URLURL del servicio Tenant Manager
tenancy.multi_tenant_max_tenant_poolsMULTI_TENANT_MAX_TENANT_POOLSMáximo de pools de tenant concurrentes
tenancy.multi_tenant_idle_timeout_secMULTI_TENANT_IDLE_TIMEOUT_SECTimeout de inactividad para evicción de pool de tenant
tenancy.multi_tenant_cache_ttl_secMULTI_TENANT_CACHE_TTL_SECTTL de caché de configuración de tenant

Claves solo bootstrap (requieren reinicio)

Estas claves no están registradas en la API de systemplane. Cámbielas mediante variables de entorno y reinicie:
ClaveVariable de entornoDescripción
app.log_levelLOG_LEVELNivel de log de la aplicación (debug, info, warn, error)
server.addressSERVER_ADDRESSDirección de escucha del servidor HTTP
postgres.primary_hostPOSTGRES_HOSTHost de la base de datos primaria
postgres.primary_portPOSTGRES_PORTPuerto de la base de datos primaria
postgres.primary_dbPOSTGRES_DBNombre de la base de datos primaria
redis.hostREDIS_HOSTHost de Redis
rabbitmq.hostRABBITMQ_HOSTHost de RabbitMQ
auth.enabledPLUGIN_AUTH_ENABLEDHabilitar middleware de autenticación
auth.hostPLUGIN_AUTH_ADDRESSDirección del servicio de autenticación

Mejores prácticas


Llame a GET /system/matcher para ver todos los valores actuales en tiempo de ejecución antes de realizar cualquier cambio. Esto confirma lo que el proceso está usando realmente, que puede diferir de las variables de entorno si se realizaron llamadas PUT anteriores.
Aunque los cambios en tiempo de ejecución no requieren reinicio, surten efecto de inmediato. Pruebe en un entorno de staging antes de aplicar a producción.
Si una clave no es visible en GET /system/matcher, es solo bootstrap. Actualice la variable de entorno y reinicie el servicio — no hay ruta en tiempo de ejecución para esos valores.

Próximos pasos


Modo multi-tenant

Habilitar y configurar el aislamiento de tenant.

Enrutamiento de excepciones

Configurar cómo se despachan las excepciones a sistemas externos.

Reglas de coincidencia

Configurar reglas de coincidencia de transacciones.

Seguridad

Autenticación, autorización y protección de datos.