Configuración operativa
SPOT 2.0 separa claramente productor y lector: el agente publica telemetría SAP
schema v2 en metrics y logs; el backend lee esos mismos Data Streams. No
existen campos de configuración para índices Jobs, Events o WPInfo.
Storage
/etc/spot/spot.yaml:
default_elasticsearch_target_id: production-elastic
elasticsearch_targets:
- id: production-elastic
alias: SAP Production
url: https://elastic.example.local:9200
namespace: production
enabled: true
/etc/spot/.spot-agent-sap.yaml:
elasticsearch:
url: https://elastic.example.local:9200
namespace: production
manage_data_streams_ilm: false
enabled: true
namespace es el único componente configurable del routing. Backend y agente
derivan spot-integration-production-metrics,
spot-integration-production-logs y el stream operativo aislado del agente.
No existen campos de storage, exporter, índices SAP o pipelines.
Confianza TLS y secretos ligados al destino
Las CAs corporativas se importan desde Configuración > Trust store. SPOT muestra nombre, fingerprint SHA-256, sujeto, emisor, expiración y destinos que la usan. En paquetes system se guardan bajo /etc/spot/tls; en portable, bajo $SPOT_HOME/config/tls. La UI no acepta rutas arbitrarias y no permite borrar una CA asignada.

En Elastic externo, LDAP/AD e IA HTTPS puedes validar con las CAs del sistema, seleccionar una CA importada o activar explícitamente insecure_skip_verify. La excepción nunca cambia HTTPS por HTTP, no permite redirects y no desactiva los controles DNS/IP. Mientras esté activa, la tarjeta y el estado general muestran un warning persistente y Save/Test quedan auditados.
Una credencial enmascarada pertenece a la identidad exacta del destino. Si cambias protocolo, host, puerto, base path, autenticación, usuario/bind DN, SNI, CA o política TLS, introduce el secreto completo. Test y Save aplican la misma regla y nunca prueban un secreto antiguo contra un destino nuevo.
LDAP y Active Directory
Se admiten LDAPS y StartTLS, incluidos destinos RFC1918. Elige validación estricta, CA importada o verificación desactivada. La contraseña bind queda ligada a protocolo, host, puerto, bind DN, SNI y política TLS. Los redirects no aplican y SPOT fija la IP validada durante la conexión para evitar DNS rebinding.
Proveedores de IA
Los proveedores con API key requieren HTTPS. Pueden usar CA válida o verificación desactivada, sin redirects. HTTP loopback se permite únicamente sin API key. HTTP privado sobre LAN también exige no usar API key y aceptar expresamente su aviso; este riesgo es distinto de HTTPS sin verificación y la interfaz los muestra por separado.
En Elastic embebido, setup activa manage_data_streams_ilm. En un target
externo queda desactivado: bootstrap sólo comprueba conectividad y no crea
templates, políticas ni Data Streams. Si se activa explícitamente, SPOT gestiona
únicamente metrics y logs.
Conexiones y colecciones
Cada conexión SAP tiene ID estable, zona IANA y siete colecciones:
| Familia | Default | Contenido |
|---|---|---|
| Metrics | 300 s | CCMS y métricas Operations |
| CCMS events | 300 s | Eventos normalizados |
| Jobs | 300 s | Runs y líneas de log |
| Work processes | 300 s | Snapshots de procesos |
| ABAP dumps | 300 s | Evidencia ST22 saneada |
| RFC failures | 300 s | tRFC/aRFC/qRFC/bgRFC sin payload |
| Certificates | 86400 s | Inventario y transiciones públicas |
Cada intervalo es una frecuencia fija alineada al reloj. Con 300 segundos, las familias comienzan en fases deterministas dentro del primer minuto de cada bloque de cinco minutos. Cada source/familia se ejecuta de forma independiente: una llamada lenta no desplaza las demás. Al arrancar o recargar configuración, el agente hace una primera extracción escalonada y consolida los ciclos perdidos sin crear una cola de ejecuciones atrasadas.
El probe por familia muestra supported, unauthorized, unavailable o
error, último éxito y error saneado. Una subcapacidad ausente no detiene el
resto.
Las contraseñas SAP son de sólo escritura. SPOT conserva la contraseña guardada al editar otros campos únicamente si no cambian el ID, ASHOST, system number, client ni usuario RFC. Si cambia cualquiera de esos datos, vuelve a introducir la contraseña completa; una máscara o un campo vacío no reutiliza la credencial anterior para el nuevo destino.
Los mismos controles bloquean metadata cloud, link-local, multicast y direcciones unspecified. RFC1918 se permite en on-prem; insecure_skip_verify no omite estos límites.
Estado incremental
Los watermarks y capacidades están bajo /var/lib/spot-agent-sap (o
$SPOT_HOME/data). El agente pagina hasta agotar SAP, conserva solape y
deduplica con event_id. El backfill inicial de Jobs, dumps y RFC abarca 24
horas.
Privacidad y permisos
- Dumps: no se recogen variables de memoria ni datos de negocio.
- RFC: no se recoge el payload de las llamadas.
- Certificados: nunca se recogen claves privadas.
- Viewer y admin pueden consultar evidencia dentro de su source; sólo admin cambia configuración.
- Ninguna API o tool AI acepta índices, URL Elastic o scope arbitrario.
ML, alertas e IA
Dumps y RFC producen conteos sparse para ML; certificados usan thresholds deterministas y no tienen forecast. AI consulta dumps, RFC y certificados con tools read-only y source-scoped. Configura reglas y conectores en Configuración → Alertas.
Productor antiguo
El backend 2.0 filtra sólo schema_version=2. Mientras un agente on-prem siga
produciendo el formato anterior, la UI muestra Agent upgrade required /
producer_upgrade_required, no falsos ceros ni un error genérico.