La integración de SAP HANA recopila las métricas y los registros de SAP HANA. Las métricas se recopilan mediante consultas a vistas de supervisión relevantes. Esta integración escribe registros de seguimiento estructurados.
Para obtener más información sobre HANA, consulta la documentación de SAP HANA.
Requisitos previos
Para recopilar la telemetría de HANA, debes instalar el Agente de operaciones, versión 2.18.1 o posterior.
Esta integración es compatible con la versión 2.0 de HANA.
Configura tu instancia de HANA
Para recopilar métricas, un usuario de supervisión requiere acceso SELECT
a las vistas de supervisión relevantes. La siguiente secuencia de comandos de SQL crea un rol de supervisión y lo aplica a un usuario de supervisión si lo ejecuta un usuario con permisos suficientes conectados a la instancia de SAP HANA.
--Create the user CREATE RESTRICTED USER otel_monitoring_user PASSWORD; --Enable user login ALTER USER otel_monitoring_user ENABLE CLIENT CONNECT; --Create the monitoring role CREATE ROLE OTEL_MONITORING; --Grant permissions to the relevant views GRANT CATALOG READ TO OTEL_MONITORING; GRANT SELECT ON SYS.M_BACKUP_CATALOG TO OTEL_MONITORING; GRANT SELECT ON SYS.M_BLOCKED_TRANSACTIONS TO OTEL_MONITORING; GRANT SELECT ON SYS.M_CONNECTIONS TO OTEL_MONITORING; GRANT SELECT ON SYS.M_CS_ALL_COLUMNS TO OTEL_MONITORING; GRANT SELECT ON SYS.M_CS_TABLES TO OTEL_MONITORING; GRANT SELECT ON SYS.M_DATABASE TO OTEL_MONITORING; GRANT SELECT ON SYS.M_DISKS TO OTEL_MONITORING; GRANT SELECT ON SYS.M_HOST_RESOURCE_UTILIZATION TO OTEL_MONITORING; GRANT SELECT ON SYS.M_LICENSES TO OTEL_MONITORING; GRANT SELECT ON SYS.M_RS_TABLES TO OTEL_MONITORING; GRANT SELECT ON SYS.M_SERVICE_COMPONENT_MEMORY TO OTEL_MONITORING; GRANT SELECT ON SYS.M_SERVICE_MEMORY TO OTEL_MONITORING; GRANT SELECT ON SYS.M_SERVICE_REPLICATION TO OTEL_MONITORING; GRANT SELECT ON SYS.M_SERVICE_STATISTICS TO OTEL_MONITORING; GRANT SELECT ON SYS.M_SERVICE_THREADS TO OTEL_MONITORING; GRANT SELECT ON SYS.M_SERVICES TO OTEL_MONITORING; GRANT SELECT ON SYS.M_VOLUME_IO_TOTAL_STATISTICS TO OTEL_MONITORING; GRANT SELECT ON SYS.M_WORKLOAD TO OTEL_MONITORING; GRANT SELECT ON _SYS_STATISTICS.STATISTICS_CURRENT_ALERTS TO OTEL_MONITORING; --Add the OTEL_MONITOR role to the monitoring user GRANT OTEL_MONITORING TO otel_monitoring_user;
Configura el Agente de operaciones para HANA
Mediante la guía Configura el Agente de operaciones, agrega los elementos necesarios para recopilar la telemetría de las instancias de HANA y reinicia el agente.
Configuración de ejemplo
El siguiente comando crea la configuración para recopilar y transferir la telemetría de transferencia para HANA y reinicia el Agente de operaciones.
Configura la recopilación de registros
A fin de transferir registros desde HANA, debes crear receptores para los registros que produce HANA y, luego, crear una canalización para los receptores nuevos.
A fin de configurar un receptor para tus registros saphana
, especifica los siguientes campos:
Campo | Predeterminada | Descripción |
---|---|---|
exclude_paths |
[/usr/sap/*/HDB*/${HOSTNAME}/trace/nameserver_history*.trc, /usr/sap/*/HDB*/${HOSTNAME}/trace/nameserver*loads*.trc, /usr/sap/*/HDB*/${HOSTNAME}/trace/nameserver*executed_statements*.trc] |
Una lista de patrones de ruta de acceso del sistema de archivos que se excluirán del conjunto que coincide con include_paths . |
include_paths |
[/usr/sap/*/HDB*/${HOSTNAME}/trace/*.trc] |
Una lista de rutas de acceso del sistema de archivos que se leerán mediante la visualización del final de cada archivo. Se puede usar un comodín (*) en las rutas. |
record_log_file_path |
false |
Si se configura como true , la ruta al archivo específico desde el que se obtuvo el registro aparece en la entrada de registro de salida como el valor de la etiqueta agent.googleapis.com/log_file_path . Cuando se usa un comodín, solo se registra la ruta de acceso del archivo del que se obtuvo el registro. |
type |
El valor debe ser saphana. |
|
wildcard_refresh_interval |
60s |
El intervalo en el que se actualizan las rutas de acceso de archivos comodín en include_paths . Se proporciona como una duración, por ejemplo, 30s o 2m . Esta propiedad puede ser útil en el caso de una capacidad de procesamiento de registro alta en la que los archivos de registro se rotan más rápido que el intervalo predeterminado. |
¿Qué se registra?
logName
se deriva de los ID de receptor especificados en la configuración. Los campos detallados dentro de LogEntry
son los siguientes.
Los registros saphana
contienen los siguientes campos en LogEntry
:
Campo | Tipo | Descripción |
---|---|---|
jsonPayload.component |
string | Componente de SAP HANA |
jsonPayload.thread_id |
número | ID del subproceso que registra el mensaje |
jsonPayload.connection_id |
número | ID de la conexión desde la que se originó el mensaje, si el mensaje se registró en el alcance de una conexión |
jsonPayload.transaction_id |
número | ID de la transacción en la que se originó el mensaje, si el mensaje se registró en el alcance de una transacción |
jsonPayload.update_transaction_id |
número | ID de la transacción de actualización en la que se originó el mensaje, si el mensaje se registró dentro del alcance de una transacción de actualización |
jsonPayload.message |
string | Mensaje del registro |
sourceLocation.file |
string | Nombre de archivo de origen |
sourceLocation.line |
número | Línea dentro del archivo de origen |
Configura la recopilación de métricas
A fin de transferir métricas desde HANA, debes crear receptores para las métricas que produce HANA y, luego, una canalización para los receptores nuevos.
A fin de configurar un receptor para las métricas de saphana
, especifica los siguientes campos:
Campo | Predeterminada | Descripción |
---|---|---|
ca_file |
Ruta al certificado de CA. Como cliente, esto verifica el certificado del servidor. Si está vacío, el receptor usa la CA raíz del sistema. | |
cert_file |
Ruta de acceso al certificado TLS que se usará para las conexiones requeridas por mTLS. | |
collection_interval |
60s |
Un valor time.Duration, como 30s o 5m . |
endpoint |
localhost:30015 |
El nombre de host:puerto que se usa para conectarse a la instancia de saphana. |
insecure |
true |
Establece si se debe usar o no una conexión TLS segura. Si se configura como , TLS está habilitado. |
insecure_skip_verify |
false |
Establece si se debe omitir la verificación del certificado. Si insecure se configura como true , no se usa insecure_skip_verify value . |
key_file |
Ruta de acceso a la clave TLS que se usará para las conexiones requeridas por mTLS. | |
password |
La contraseña usada para conectarse a la instancia. | |
type |
Este valor debe ser saphana . |
|
username |
El nombre de usuario usado para conectarse a la instancia. |
Qué se supervisa
En la siguiente tabla, se proporciona una lista de métricas que el Agente de operaciones recopila de la instancia HANA.
Tipo de métrica | |
---|---|
Categoría, tipo Recursos supervisados |
Etiquetas |
workload.googleapis.com/saphana.alert.count
|
|
GAUGE , INT64 gce_instance |
rating
|
workload.googleapis.com/saphana.backup.latest
|
|
GAUGE , INT64 gce_instance |
|
workload.googleapis.com/saphana.column.memory.used
|
|
GAUGE , INT64 gce_instance |
host subtype type
|
workload.googleapis.com/saphana.component.memory.used
|
|
GAUGE , INT64 gce_instance |
component host
|
workload.googleapis.com/saphana.connection.count
|
|
GAUGE , INT64 gce_instance |
host status
|
workload.googleapis.com/saphana.cpu.used
|
|
CUMULATIVE , INT64 gce_instance |
host type
|
workload.googleapis.com/saphana.disk.size.current
|
|
GAUGE , INT64 gce_instance |
host path state usage_type
|
workload.googleapis.com/saphana.host.memory.current
|
|
GAUGE , INT64 gce_instance |
host state
|
workload.googleapis.com/saphana.host.swap.current
|
|
GAUGE , INT64 gce_instance |
host state
|
workload.googleapis.com/saphana.instance.code_size
|
|
GAUGE , INT64 gce_instance |
host
|
workload.googleapis.com/saphana.instance.memory.current
|
|
GAUGE , INT64 gce_instance |
host state
|
workload.googleapis.com/saphana.instance.memory.shared.allocated
|
|
GAUGE , INT64 gce_instance |
host
|
workload.googleapis.com/saphana.instance.memory.used.peak
|
|
GAUGE , INT64 gce_instance |
host
|
workload.googleapis.com/saphana.license.expiration.time
|
|
GAUGE , INT64 gce_instance |
product system
|
workload.googleapis.com/saphana.license.limit
|
|
GAUGE , INT64 gce_instance |
product system
|
workload.googleapis.com/saphana.license.peak
|
|
GAUGE , INT64 gce_instance |
product system
|
workload.googleapis.com/saphana.network.request.average_time
|
|
GAUGE , DOUBLE gce_instance |
host
|
workload.googleapis.com/saphana.network.request.count
|
|
GAUGE , INT64 gce_instance |
host state
|
workload.googleapis.com/saphana.network.request.finished.count
|
|
CUMULATIVE , INT64 gce_instance |
host type
|
workload.googleapis.com/saphana.replication.average_time
|
|
GAUGE , DOUBLE gce_instance |
mode port primary secondary
|
workload.googleapis.com/saphana.replication.backlog.size
|
|
GAUGE , INT64 gce_instance |
mode port primary secondary
|
workload.googleapis.com/saphana.replication.backlog.time
|
|
GAUGE , INT64 gce_instance |
mode port primary secondary
|
workload.googleapis.com/saphana.row_store.memory.used
|
|
GAUGE , INT64 gce_instance |
host type
|
workload.googleapis.com/saphana.schema.memory.used.current
|
|
GAUGE , INT64 gce_instance |
host schema type
|
workload.googleapis.com/saphana.schema.memory.used.max
|
|
GAUGE , INT64 gce_instance |
host schema
|
workload.googleapis.com/saphana.schema.operation.count
|
|
CUMULATIVE , INT64 gce_instance |
host schema type
|
workload.googleapis.com/saphana.schema.record.compressed.count
|
|
GAUGE , INT64 gce_instance |
host schema
|
workload.googleapis.com/saphana.schema.record.count
|
|
GAUGE , INT64 gce_instance |
host schema type
|
workload.googleapis.com/saphana.service.code_size
|
|
GAUGE , INT64 gce_instance |
host service
|
workload.googleapis.com/saphana.service.count
|
|
GAUGE , INT64 gce_instance |
host status
|
workload.googleapis.com/saphana.service.memory.compactors.allocated
|
|
GAUGE , INT64 gce_instance |
host service
|
workload.googleapis.com/saphana.service.memory.compactors.freeable
|
|
GAUGE , INT64 gce_instance |
host service
|
workload.googleapis.com/saphana.service.memory.effective_limit
|
|
GAUGE , INT64 gce_instance |
host service
|
workload.googleapis.com/saphana.service.memory.heap.current
|
|
GAUGE , INT64 gce_instance |
host service state
|
workload.googleapis.com/saphana.service.memory.limit
|
|
GAUGE , INT64 gce_instance |
host service
|
workload.googleapis.com/saphana.service.memory.shared.current
|
|
GAUGE , INT64 gce_instance |
host service state
|
workload.googleapis.com/saphana.service.memory.used
|
|
GAUGE , INT64 gce_instance |
host service type
|
workload.googleapis.com/saphana.service.stack_size
|
|
GAUGE , INT64 gce_instance |
host service
|
workload.googleapis.com/saphana.service.thread.count
|
|
GAUGE , INT64 gce_instance |
host status
|
workload.googleapis.com/saphana.transaction.blocked
|
|
GAUGE , INT64 gce_instance |
host
|
workload.googleapis.com/saphana.transaction.count
|
|
CUMULATIVE , INT64 gce_instance |
host type
|
workload.googleapis.com/saphana.volume.operation.count
|
|
CUMULATIVE , INT64 gce_instance |
host path type usage_type
|
workload.googleapis.com/saphana.volume.operation.size
|
|
CUMULATIVE , INT64 gce_instance |
host path type usage_type
|
workload.googleapis.com/saphana.volume.operation.time
|
|
CUMULATIVE , INT64 gce_instance |
host path type usage_type
|
Panel de muestra
Para ver tus métricas de HANA, debes tener configurado un gráfico o un panel. Cloud Monitoring proporciona una biblioteca de paneles de muestra para integraciones, que contienen gráficos preconfigurados. Para obtener información sobre la instalación de estos paneles, consulta Instala paneles de muestra.
Verifica la configuración
En esta sección, se describe cómo verificar que hayas configurado correctamente el receptor de HANA. El agente de operaciones puede tardar uno o dos minutos en comenzar a recopilar telemetría.
Para verificar que se transfieran los registros, ve al Explorador de registros y ejecuta la siguiente consulta a fin de ver los registros de HANA:
resource.type="gce_instance"
log_id("saphana")
Para verificar que las métricas se transfieran, ve a Explorador de métricas y ejecuta la siguiente consulta en la pestaña MQL:
fetch gce_instance
| metric 'workload.googleapis.com/saphana.connection.count'
| every 1m
¿Qué sigue?
Para obtener una explicación sobre cómo usar Ansible a fin de instalar el agente de operaciones, configurar una aplicación de terceros y, luego, instalar un panel de muestra, consulta el video Instala el agente de operaciones para solucionar problemas de apps de terceros.