Saltar al contenido principal

Troubleshooting on-premise

Licencia requerida o connector en restart loop

Comprueba primero el validador y el estado saneado:

systemctl status spot-license.service --no-pager
sudo -u spot /opt/spot/bin/spot-agent-sap license-status --json
sudo -u spot /opt/spot/bin/spot-agent-sap license-check
journalctl -u spot-license.service -u spot-agent-sap.service -n 120 --no-pager

Si falta la licencia, actívala o instala el fichero offline siguiendo Licencias y renovación. expired, revoked e invalid bloquean el producto; un exceso de usuarios o instancias sólo muestra un warning y no debe provocar reinicios. No pegues claves ni respuestas raw en un ticket o en los logs.

Si una licencia online era válida y el servicio remoto queda temporalmente inaccesible, SPOT puede mostrar hasta siete días de gracia desde la última validación correcta, nunca más allá de la expiración. Un fallo del validador local no activa esa gracia: corrige primero spot-license.service.

UI no abre

Comprueba:

systemctl status spot-server --no-pager
ss -ltnp | grep 8080
journalctl -u spot-server -n 120 --no-pager

Si el puerto está ocupado, cambia el puerto desde setup o configuración runtime.

Setup no guarda HTTPS

Valida que certificado y clave existen, pertenecen a la misma pareja y son legibles por el usuario del proceso. HTTP sigue siendo válido si aún no quieres activar TLS.

Elastic embebido no arranca

Comprueba memoria, permisos y logs:

systemctl status spot-elasticsearch --no-pager
journalctl -u spot-elasticsearch -n 120 --no-pager
curl -sS http://127.0.0.1:9200

El servicio debe escuchar sólo en 127.0.0.1:9200. En modo embebido no configures usuario, API key, CA ni insecure_skip_verify; vuelve a guardar embedded si quedaron valores de una configuración externa anterior.

Elastic externo HTTP queda bloqueado

Los perfiles externos exigen HTTPS. Un perfil HTTPS heredado sin transport_profile se clasifica de forma segura como external; un perfil HTTP heredado bloquea el nuevo runtime con elastic_transport_migration_required hasta que se migre. Elige CA del sistema, CA importada o Desactivar validación del certificado. Esta última opción no permite HTTP. Sólo http://127.0.0.1:9200, sin credenciales, puede clasificarse como embedded y únicamente dentro de spot-suite.

Elasticsearch pendiente

Es un estado válido de spot-suite-external cuando se aplazó el destino. Health, usuarios y configuración siguen disponibles; las vistas de datos esperan una conexión. Abre Configuración, introduce HTTPS, ejecuta Test y guarda. No intentes arrancar un servicio embedded: esta variante no lo incluye.

Permission denied en código o SDK

No cambies /opt/spot a propietario spot ni spot-elastic. El payload system debe ser root-owned; sólo datos y logs son mutables. Si un upgrade anterior dejó ownership inseguro, reinstala el paquete para sustituir el árbol ejecutable y verifica permisos. En portable, revisa que $SPOT_HOME pertenezca sólo al usuario dedicado y no sea accesible por otros usuarios.

Falla un certificado privado

  1. Comprueba hostname, expiración y cadena.
  2. Importa la CA corporativa en Configuración > Trust store y selecciónala en el destino.
  3. Si necesitas aceptar el riesgo temporalmente, activa explícitamente Desactivar validación del certificado y guarda.

No existe fallback automático. Con la excepción activa la conexión continúa cifrada, pero no autentica al servidor; el warning permanece después de recargar o reiniciar. Cambiar de política TLS exige volver a introducir el password o API key.

No puedo borrar una CA

SPOT bloquea la eliminación mientras Elastic, LDAP o IA la utilicen. Cambia todos los destinos afectados a otra CA o a las CAs del sistema y guarda antes de borrarla. No edites manualmente el fingerprint ni introduzcas una ruta de fichero en la configuración.

LDAPS o StartTLS no conecta

Verifica esquema/modo, host, puerto, bind DN, SNI y CA. Si cambió alguno, vuelve a introducir la contraseña bind; una máscara no se reutiliza contra la nueva identidad. Las IP link-local, metadata, multicast y unspecified se bloquean incluso con validación de certificado desactivada.

No llegan datos SAP

Revisa:

  • RFC SDK disponible en el servicio.
  • Usuario y secreto SAP.
  • Puertos RFC.
  • Conexión SAP marcada como habilitada.
  • Logs de spot-agent-sap.

Si sólo falla CCMS events, distingue un fallo RFC de una alerta sin texto. Una alerta con identidad, timestamp y valor válidos se conserva aunque SAP no entregue el mensaje; SPOT muestra un texto operativo de fallback. Los errores de autorización, las respuestas corruptas o un VALUE ausente sí detienen el ciclo y conservan el watermark anterior. El diagnóstico separa nodos elegibles, candidatos, emitidos, fallbacks y fallos reales.

Dashboards sin datos

Comprueba target global, namespace, índices y ventana temporal. Si Events tiene datos pero Operations no, abre Metrics y valida una métrica concreta del dominio.

Bootstrap devuelve management_disabled o falla el preflight

management_disabled indica que el target permite lectura/escritura, pero no que SPOT administre su almacenamiento. Activa SPOT manages Data Streams and ILM solo si el propietario de Elastic lo autoriza. Si el preflight falla, corrige versión, privilegios de templates/ILM/índices o espacio antes de reintentar; SPOT no muta el cluster cuando ese preflight no pasa.

Con la opción desactivada, un resultado management_status: unmanaged es correcto. detached indica que SPOT gestionó antes el target y ahora ha dejado de reconciliarlo sin eliminar lo existente.

IA no responde

Revisa proveedor, origen/base path, política TLS, CA, clave y conectividad saliente. Usa Test: aplica la misma política que runtime y registra el resultado sin mostrar secretos. Los proveedores con API key requieren HTTPS; HTTP loopback sólo funciona sin clave y HTTP LAN sin clave requiere aceptar su aviso específico.