Skip to main content

Discovery

This plugin can be integrated with Pandora FMS Discovery.Discovery.

To do this, you must upload the ".disco" package, which can be downloaded from the Pandora FMS library:

https://pandorafms.com/library/

image.pngimage.png

Once uploaded, SAP HANA environments can be monitored by creating Discovery tasks from the Management > Discovery > Applications section.

image.pngimage.png

For each task, the following minimum parameters will be required:

  • SAP HANA target stringstring:: IP address of the host withrunning SAP HANA, port, and database instanceinstance.
  • CredentialsCredentials:: Custom-type username and password. ForTo this,use them, a new credential must be created in the Management > Configuration > Credential store section..

step2.pngstep2.png

ItThe willtask configuration can also be possible to adjust the task configurationadjusted to customize the desired monitoring:

step3_1.png

  • Max threads: Maximum number of concurrent threads used to execute monitoring queries.
  • Target agent: Allows manually defining the agent names where modules will be created. One agent name must be provided for each SAP HANA target string, preserving the same order. If left empty, the plugin will automatically create agents using the HOST - DATABASE format.
  • Regexp to filter modules: Enables module filtering using regular expressions.
  • Allow regexp: If filtering is enabled, only modules whose names match this regular expression will be created.
  • Regexp to discard modules: Enables module exclusion using regular expressions.
  • Deny regexp: If exclusion is enabled, modules whose names match this regular expression will not be created.
  • Backups Size: Creates modulesthe withmodule metricsbackups_estimated_size_bytes, oncontaining the estimated sizeSAP ofHANA databasebackup backups.size.
  • Timestamp: Creates athe module withtimestamp, containing the current database date/time to check forverify time drift.
  • Hana Version: Creates athe module withversion, containing the installed SAP HANA version.
  • Data Disk Information: Creates the modules volumes_count and volumes_io_entries, with basic informationvolume aboutand HANAI/O dataactivity volumes/disks.information.
  • Hana Service StaticsStatistics: Creates modules withfor generaleach metricsdetected ofSAP HANA servicesservice, (statusincluding ACTIVE_STATUS, PROCESS_CPU_TIME, TOTAL_CPU_TIME, PROCESS_MEMORY, TOTAL_MEMORY, AVAILABLE_MEMORY, ACTIVE_REQUEST_COUNT, PENDING_REQUEST_COUNT, ACTIVE_THREAD_COUNT, THREAD_COUNT, OPEN_FILE_COUNT, REQUESTS_PER_SEC, RESPONSE_TIME, START_TIME, and resources)SYS_TIMESTAMP.
  • Hana CPU Time: Creates the modules cpu_total_time_ms, cpu_process_time_ms, and cpu_service_count, with the accumulatedaggregated CPU usage reportedmetrics byacross theSAP HANA services.
  • Hana RS Fragmentation: Creates modulesthe module rowstore_fragmentation_pct, with the estimated Row Store fragmentation indicators.percentage.
  • Hana License: Creates the modules license_expiration_date, license_days_remaining, license_memory_limit, license_hardware_key, license_installation_number, license_product_name, license_system_id, license_swproductname, and license_enforced, with information about theSAP HANA environment license status.information.
  • Hana IO Stats: Creates the modules io_total_read_bytes, io_total_write_bytes, and io_total_time_ms, with read/writeaggregated metricsread, write, and I/O timetiming on volumes.metrics.
  • Hana Get Stated Connections: Creates the modules connections_total, connections_running, connections_idle, connections_queued, connections_disconnected, and connections_unknown, with theactive numberconnection ofstatus connections and their status.metrics.
  • Hana Memory: Creates the modules memory_used_bytes and memory_allocation_limit_bytes, with memory usage and configured allocation limits.limit metrics.
  • Hana Transactions: Creates the modules blocked_transactions, blocked_transactions_distinct_users, and open_transactions, with metricsinformation ofabout open transactions and blocked transactions.
  • Execute custom queries: Enables execution of custom queries defined in the Custom Queriesqueries field.
  • Custom queries: Allows creating multiple custom modules withusing check_begin/check_end blocks.
  • Custom module prefix: Defines a prefix that will be appended to generated module names.
  • Custom modules (legacy): Allows defining custom modules using the desiredlegacy typesmodule:query:type:description and values.format.

step3_2.pngimage.png

Examples of custom queries:

# =======================================================================
# Custom queries (SAP HANA HXE)
# =======================================================================

check_begin
name connections_total
description ConexionesTotal totalesconnections (SYS.M_CONNECTIONS)
operation value
target SELECT COUNT(*) FROM SYS.M_CONNECTIONS
datatype generic_data
unit conns
check_end

check_begin
name connections_active
description Conexiones activasActive RUNNING connections (SYS.M_CONNECTIONS)
operation value
target SELECT COUNT(*) FROM SYS.M_CONNECTIONS WHERE CONNECTION_STATUS = 'RUNNING'
datatype generic_data
unit conns
check_end

check_begin
name memory_used_bytes
description MemoriaTotal usadaused totalmemory (INSTANCE_TOTAL_MEMORY_USED_SIZE)
operation value
target SELECT COALESCE(SUM(INSTANCE_TOTAL_MEMORY_USED_SIZE),0) FROM SYS.M_HOST_RESOURCE_UTILIZATION
datatype generic_data
unit bytes
check_end

check_begin
name memory_allocation_limit_bytes
description LimiteMemory deallocation asignacion de memorialimit (ALLOCATION_LIMIT)
operation value
target SELECT COALESCE(SUM(ALLOCATION_LIMIT),0) FROM SYS.M_HOST_RESOURCE_UTILIZATION
datatype generic_data
unit bytes
check_end

check_begin
name cpu_total_time_ms
description CPUAggregated total CPU time agregado (TOTAL_CPU_TIME)
operation value
target SELECT COALESCE(SUM(TOTAL_CPU_TIME),0) FROM SYS.M_SERVICE_STATISTICS
datatype generic_data
unit ms
check_end

check_begin
name cpu_process_time_ms
description CPUAggregated process CPU time agregado (PROCESS_CPU_TIME)
operation value
target SELECT COALESCE(SUM(PROCESS_CPU_TIME),0) FROM SYS.M_SERVICE_STATISTICS
datatype generic_data
unit ms
check_end

check_begin
name service_total_memory_bytes
description MemoriaAggregated total agregadaservice por serviciosmemory (TOTAL_MEMORY)
operation value
target SELECT COALESCE(SUM(TOTAL_MEMORY),0) FROM SYS.M_SERVICE_STATISTICS
datatype generic_data
unit bytes
check_end

check_begin
name service_available_memory_bytes
description MemoriaAggregated disponibleavailable agregadamemory (AVAILABLE_MEMORY)
operation value
target SELECT COALESCE(SUM(AVAILABLE_MEMORY),0) FROM SYS.M_SERVICE_STATISTICS
datatype generic_data
unit bytes
check_end

check_begin
name io_total_read_bytes
description IOAggregated total leidobytes acumuladoread (TOTAL_READ_SIZE)
operation value
target SELECT COALESCE(SUM(TOTAL_READ_SIZE),0) FROM SYS.M_VOLUME_IO_TOTAL_STATISTICS
datatype generic_data
unit bytes
check_end

check_begin
name io_total_write_bytes
description IOAggregated total escritobytes acumuladowritten (TOTAL_WRITE_SIZE)
operation value
target SELECT COALESCE(SUM(TOTAL_WRITE_SIZE),0) FROM SYS.M_VOLUME_IO_TOTAL_STATISTICS
datatype generic_data
unit bytes
check_end

check_begin
name io_total_time_ms
description TiempoAggregated total deI/O IO acumuladotime (TOTAL_IO_TIME)
operation value
target SELECT COALESCE(SUM(TOTAL_IO_TIME),0) FROM SYS.M_VOLUME_IO_TOTAL_STATISTICS
datatype generic_data
unit ms
check_end

check_begin
name rowstore_free_pct
description RowstoreRow porcentajeStore librefree percentage (FREE_SIZE/ALLOCATED_SIZE)
operation value
target SELECT CASE WHEN SUM(ALLOCATED_SIZE)=0 THEN 0 ELSE ROUND(SUM(FREE_SIZE)*100.0/SUM(ALLOCATED_SIZE),2) END FROM SYS.M_RS_MEMORY
datatype generic_data
unit %
min_warning 40
min_critical 20
inverse_warning 1
inverse_critical 1
check_end

check_begin
name hana_time_utc
description TimestampDatabase UTC de la BDtimestamp
operation value
target SELECT TO_VARCHAR(CURRENT_UTCTIMESTAMP) FROM DUMMY
datatype generic_data_string
check_end

check_begin
name hana_services_running
description NumeroNumber deof serviciosactive activosservices (ACTIVE_STATUS='YES')
operation value
target SELECT COUNT(*) FROM SYS.M_SERVICE_STATISTICS WHERE ACTIVE_STATUS = 'YES'
datatype generic_data
unit services
check_end

Examples of legacy queries:

legacy_memory_used:SELECT COALESCE(SUM(INSTANCE_TOTAL_MEMORY_USED_SIZE),0) FROM SYS.M_HOST_RESOURCE_UTILIZATION:generic_data:Legacy memory usage
legacy_hana_version:SELECT VERSION FROM SYS.M_DATABASE:generic_data_string:Legacy HANA version