# SAP R3 - Deset # Introducción Este documento tiene como objetivo la descripción de la monitorización de sistemas SAP con Pandora FMS a través del Discovery. El plugin **pandora\_sap\_deset** como wrapper del plugin **Deset\_SAP\_Plugin** para su uso en Discovery, permite monitorizar sistemas y servidores SAP de manera remota sin necesidad de instalar nada en los equipos que alojan SAP, haciendo uso de funciones RFC (Remote Function Call). # Prerrequisitos - **Dependencias** La **carpeta lib** que debe contener ficheros **Deset\_SAP\_Plugin.jar, libsapjco3.so, sapjco3.jar y la carpeta jre** (java runtime environment), debe de estar en la misma ruta en la que se ejecuta el plugin. Esta carpeta se adjunta con el plugin en el paquete que se puede descargar de la librería de Pandora FMS. - **Conectividad** Dado que la monitorización se realiza desde fuera del sistema SAP, es necesario asegurar la comunicación con el mismo. Haciendo uso de las funciones RFC, la conectividad se realiza desde el equipo que ejecuta el plugin (por ejemplo, el servidor de Pandora FMS) y el gateway del sistema SAP a través del puerto **33XX TCP**, siendo **XX** el numero del sistema SAP al que se conecta (por defecto el 3300 TCP). Por lo tanto el rango de puertos de conexión posible irá desde el 3300 al 3399. - **Usuario** Para poder ejecutar las funciones RFC del sistema SAP será necesario contar con un usuario y su contraseña. Este usuario debe ser de tipo “B-Sistema” (System) en versiones SAP ECC o S/4HANA, o de tipo “C-Comunicación / CPI-C/RFC” en versiones de SAP anteriores. Se recomienda que el usuario sea de tipo "B-Sistema" siempre que sea posible ya que para este tipo de usuarios no caducan sus contraseñas, lo cual en el caso de suceder obligaría a cambiarlas también en la configuración del plugin en Pandora FMS. Para la creación del usuario en el sistema SAP, será necesario que tenga los siguientes objetos de autorización: - - Objeto de Autorización "**S\_RFC**": - Campo "**ACTVT**" con valor "**16 Ejecutar**". - Campo "**RFC\_TYPE**" con valor "**X FUGR**". - Campo "**RFC\_NAME**" con valores "**I\***", "**R\***", "**S\***", "**O\***", "**T\***". - Objeto de Autorización "**S\_TABU\_DIS**": - Campo "**ACTVT**": valor "**03 Visualizar**". - Campo "**DICBERCLS**" con valor "**\***". - Objeto de autorizacion "**S\_XMI\_LOG**": - **Todos sus campos** con valores "**\***". - Objeto de autorizacion "**S\_XMI\_PROD**": - **Todos sus campos** con valores "**\***". - Objeto de Autorización "**S\_TCODE**": - Campo "**TCD**" con valor "**SM50**". - Objeto de Autorización "**S\_TABU\_RFC**": - - Campo "**ACTVT**": valor "**03 Visualizar**". - **Licencia** Deset\_SAP\_Plugin es exclusivo para clientes de Pandora FMS Enterprise que lo hayan contratado. Por ello es necesario contar con una clave de licencia válida para ejecutar el plugin. Para obtener una licencia válida, contacte con el equipo de Pandora FMS en: [https://pandorafms.com/es/](https://pandorafms.com/es/) - # Parámetros y configuración **Parámetros**
--confRuta al archivo de configuración
--custom\_modulesRuta al archivo en el que se deben de definir los módulos personalizados
**Archivo de configuración (--conf)** El contenido del fichero será el siguiente: ``` agents_group_id = < ID del grupo en el que se creará el agente de la tarea > threads = < Número de hilos que se usaran para la creación de módulos > interval = < Intervalo de monitorización del agente en segundos > server = < IP del servidor SAP > client = < Número de cliente SAP > system = < Número de sistema SAP > license = < Código de la licencia > credentials = < Base 64 del JSON con las credenciales > agent = < Nombre de agente objetivo > modules = < Lista JSON de módulos predefinidos a monitorizar > ``` Ejemplo ``` agents_group_id = 10 threads = 5 interval = 300 server = 192.168.80.191 client = 001 system = 00 license = 022220743456700424 credentials = asJ1c2VyIjoiGBTREjUiLCJwYXNzd29yZCI6IklOKJNJQUwifQ== agent = SAP_R3 modules = [192,195] ``` Credenciales Las credenciales que se deben introducir en la opción "credentials" del archivo de configuración descrito anteriormente son un código base 64 de un JSON con el siguiente formato: ``` {"user":"< usuario >","password":"< contraseña >"} ``` Ejemplo JSON ``` {"user":"SAP_USER","password":"JhGBf76@db!"} ``` Este JSON debería convertirse a base 64 y el resultado sería una cadena como la siguiente, que es la que se debería introducir en la opción "credentials" del fichero de configuración : ``` eyJ1c2VyIjoiU0FQX1VTRVIiLCJwYXNzd29yZCI6IkpoR0JmNzZAZGIhIn0= ``` **Listado de módulos personalizados (--custom\_modules)** El contenido del fichero será un listado de módulos, separando la creación de cada uno en líneas diferentes. Para la creación de estos se debe usar este formato: ``` < Nombre módulo >;< Tipo de módulo >;< Parámetros de creación de módulo de SAP > ``` Ejemplo ``` SAP info;generic_data_string;-m 120 SAP Mem Max;generic_data;-m 101 SAP Login users;generic_data_string;-m 103 ```

La lista de módulos disponibles y los parámetros que se deben usar para cada uno viene definido en la documentación adjunta del plugin de SAP ubicado en la librería de Pandora FMS, localizable en el siguiente enlace : [https://pandorafms.com/library/sap-r3-monitoring-agent/](https://pandorafms.com/library/sap-r3-monitoring-agent/)

# Ejecución manual El formato de la ejecución del plugin es el siguiente: ```shell ./pandora_sap_deset \ --conf < ruta al fichero de configuración > \ [ --custom_modules < ruta al fichero que contiene el listado de módulos personalizados a monitorizar > ] ``` Por ejemplo: ```shell ./pandora_sap_deset \ --conf /usr/share/pandora_server/util/plugin/sap.conf \ --custom_modules /usr/share/pandora_server/util/plugin/sap_custom_modules.conf ``` # Discovery Este plugin puede integrarse con el *Discovery* de Pandora FMS. Para ello se debe cargar el paquete ".disco" que puede descargar desde la librería de Pandora FMS: [https://pandorafms.com/library/](https://pandorafms.com/library/) [![image-1687944659047.png](https://pandorafms.com/guides/public/uploads/images/gallery/2023-06/scaled-1680-/image-1687944659047.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2023-06/image-1687944659047.png) Una vez cargado, se podrán monitorizar entornos de SAP creando tareas de *Discovery* desde la sección *Management > Discovery > Applications.* [![image-1687944773252.png](https://pandorafms.com/guides/public/uploads/images/gallery/2023-06/scaled-1680-/image-1687944773252.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2023-06/image-1687944773252.png) Para cada tarea se solicitarán los siguientes datos mínimos: - **SAP Hostname**: IP o FQDN del entorno SAP a monitorizar. - **SAP Client**: Cliente/Mandante SAP a monitorizar. - **SAP System Number**: Número de sistema SAP a monitorizar. - **SAP License:** Licencia proporcionada por Pandora FMS para hacer uso del plugin. Si no se cuenta con una licencia, se puede usar el modo de prueba usando el valor "trial". - **SAP Credentials**: Credenciales de SAP para conectar al entorno a monitorizar. Estas credenciales se crearán en el almacen de credenciales de la consola de Pandora FMS. [![image-1684835243175.png](https://pandorafms.com/guides/public/uploads/images/gallery/2023-05/scaled-1680-/image-1684835243175.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2023-05/image-1684835243175.png) También se podrá ajustar la configuración de la tarea para personalizar la monitorización deseada: - **Max threads**: Para optimizar el tiempo de ejecución, se podrán configurar múltiples hilos para monitorizar los módulos de la tarea. Hay que tener en cuenta que configurar múltiples hilos puede aumentar el uso de CPU de la tarea. - **Target agent:** Nombre del agente objetivo en el que se crearán los módulos indicados. En caso de no indicarse un nombre de agente, se usará el *SAP Hostname* en su lugar. - **SAP modules**: A partir de una lista de módulos predefinidos, se podrán seleccionar los elementos a monitorizar en el entorno SAP. - **Custom modules definitions**: Bloque de definición dé módulos personalizados. Cada línea del bloque será un módulo a monitorizar, indicando para cada caso nombre, tipo de dato y parámetros del plugin de SAP para obtener el dato. Cada línea debe tener el formato: `;;` Por ejemplo: `SAP info;generic_data_string;-m 120` [![image-1686146755320.png](https://pandorafms.com/guides/public/uploads/images/gallery/2023-06/scaled-1680-/image-1686146755320.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2023-06/image-1686146755320.png) Las tareas que se completen exitosamente dispondrán de un sumario de ejecución con la siguiente información: - **SAP Target**: Entorno SAP objetivo monitorizado. - **SAP Client**: Cliente/Mandante SAP monitorizado. - **SAP System**: Número de sistema SAP monitorizado. - **Total modules**: Total de módulos generados para el entorno SAP objetivo. [![image-1684835265625.png](https://pandorafms.com/guides/public/uploads/images/gallery/2023-05/scaled-1680-/image-1684835265625.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2023-05/image-1684835265625.png) Las tareas que no se completen exitosamente dispondrán de un sumario de ejecución registrando los errores producidos. # SAP View Permite visualizar el estado general de los servidores SAP: [![image-1684837464823.png](https://pandorafms.com/guides/public/uploads/images/gallery/2023-05/scaled-1680-/image-1684837464823.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2023-05/image-1684837464823.png) Esta vista muestra un panel con los módulos SAP disponibles del agente SAP seleccionado. Puede seleccionar el tiempo de refresco y el intervalo a mostrar en las gráficas. # Módulos generados por el plugin El plugin creará un agente para el servidor objetivo. Ese agente contendrá los siguientes módulos predefinidos (si se han incluido en la opción "modules" en el fichero de configuracion):
Average time of SAPGUI response102
Dialog Logged users103
SAP Idoc erroneus104
SAP IDOC OK105
SAP Dumps109
SAP List lock111
SAP Cancel Jobs113
Number of Update WPs in error116
SAP Batch input erroneus121
SAP WP without active restart150
SAP WP stopped151
SAP Login OK160
SYSFAIL, delivery attempts tRFC wrong entries number192
SYSFAIL, queue qRFC INPUT, wrong entries number195
El plugin también creará un módulo por cada módulo personalizado definido en el fichero de configuración al que se llama usando el parámetro --custom\_modules.

La lista de módulos totales disponibles que pueden incluirse en la monitorización de módulos personalizada viene definida en la documentación adjunta del plugin de SAP ubicado en la librería de Pandora, localizable en el siguiente enlace: [https://pandorafms.com/library/wp-content/uploads/2022/03/Guia\_instalacion\_SAP\_EN.Anexos\_v4.pdf](https://pandorafms.com/library/wp-content/uploads/2022/03/Guia_instalacion_SAP_EN.Anexos_v4.pdf)