# Pandora AzurePostgresql # Introducción **Ver**. 23-08-2022 Plugin con el que monitorear un servidor de datos de postgresql de azure.
**Tipo**: Plug-in de servidor
# Matriz de compatibilidad
**Sistemas donde se ha probado**CentOS 7, Fedora, rocky linux
**Sistemas donde debería funcionar**Cualquier sistema linux
# Pre requisitos - Tener el **Data Server** de Pandora FMS habilitado - Tener el **Plugin Server** de Pandora FMS habilitado - Conocer algunas credenciales de tu cuenta, como tu tenant id, secret, client id y el id resource del servidor # Configuración previa El plugin hace uso de un fichero en el que se pueden meter dos tipos de datos. ``` #credentials tenant_id: client_id: secret: #id resources serverpostgres_id: ``` **Obtención de credenciales necesarias para el uso del plugin.** **1. Credenciales para autenticar:** -Tenant id -Client id -Secret **2. ID de recurso** **Es necesaria la id del recurso que monitoriza el plugin estas son :** \- ID de recurso del servidor Postgresql **Obtención de tenant id y client id.** 1\. Para obtener el tenant id y el client id, iremos al menú registro de aplicaciones dentro de active directory: [![menu.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/scaled-1680-/menu.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/menu.png) 2\. Entraremos dentro de la aplicación. [![menu2.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/scaled-1680-/menu2.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/menu2.png) 3\. En el menú de la aplicación aparecerá el tenant id y el client id. [![menu3.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/scaled-1680-/menu3.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/menu3.png) 4\. Para encontrar el secreto iremos a certificados y secretos dentro del menu de active directory. [![menu4.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/scaled-1680-/menu4.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/menu4.png) 5\. Dentro de este menú podremos ver las claves de secreto o generarlas (tiene que ser el valor de la clave, no la id) [![menu5.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/scaled-1680-/menu5.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/menu5.png) **Obtención de la id de recurso de la base de datos.** En el menu del servidor , en información general, podremos ver la id de recurso de este pinchando en Vista json. [![image-1652285449723.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/scaled-1680-/image-1652285449723.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-05/image-1652285449723.png) # Parámetros
**Parámetro****Descripción**
--timespanEn horas(opcional), ultimo periodo de tiempo, se puede utilizar en una ejecución personalizada para mostrar los datos desde un periodo de tiempo. (opcional)
--metricNombre de la métrica para ejecución personalizada.(opcional)
--granularityEn minutosCombinado con timespan te mostrará los datos en intervalos. (opcional)
--name\_modulePara elegir el nombre del módulo en una ejecución personalizada.(opcional)
--tentacle\_portPuerto de tentacle.Por defecto 41121(opcional)
--tentacle\_addressIp del servidor tentacle al que mandar los datos(opcional)
--agent\_namePara ponerle un nombre al agente que contendrá los módulos , por defecto : "Azure SQL". (opcional)
--prefix\_modulePara ponerle un prefijo a los módulos por si se quieren diferencias de otras ejecuciones.(opcional)
--confPath del archivo conf con las querys (obligatorio)
-g,--groupGrupo de destino de Pandora FMS (opcional)
--data\_dirDirectorio de datos de Pandora FMS. **Por defecto** es /var/spool/pandora/data\_in/ (opcional)
--as\_agent\_pluginEs opcional, si quieres que el plugin sea de agente y te meta los módulos en el agente de pandora, ejecuta esto con un 1 (opcional)
# Ejecución manual **Ejecución manual básica** ``` ./pandora_azurepostgresql --conf --as_agent_plugin 1 ``` [![image-1661254388021.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/scaled-1680-/image-1661254388021.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/image-1661254388021.png) **Ejecución manual para la creación de módulo con intervalos personalizados** ``` ./pandora_azurepostgresql --conf --as_agent_plugin 1 --timespan --granularity --metric --name_module ``` [![image-1661254665603.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/scaled-1680-/image-1661254665603.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/image-1661254665603.png) [![image-1661254891721.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/scaled-1680-/image-1661254891721.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/image-1661254891721.png) # Configuración en PandoraFMS **Como plugin de servidor** **Instalación manual** Iremos a servidores > plugins: [![image-1629974405286.png](https://pandorafms.com/guides/public/uploads/images/gallery/2021-08/scaled-1680-/image-1629974405286.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2021-08/image-1629974405286.png) Pinchamos en añadir: [![image-1629974430627.png](https://pandorafms.com/guides/public/uploads/images/gallery/2021-08/scaled-1680-/image-1629974430627.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2021-08/image-1629974430627.png) Le ponemos en nombre y la descripción que se prefiera. Metemos como comando la ejecución con la ruta del plugin: ``` /path_pandora_azurepostgresql ```

Recuerda que la ruta recomendada para el uso de los plugins de servidor es: /usr/share/pandora\_server/util/plugin/

Y en parámetros del plugin introduciremos estos seguidos de la macro "\_field<N>\_", el obligatorio para que funcione es --conf.

Aunque no es obligatorio, es muy recomendable el uso del parámetro --agent\_name , ya que nos permite personalizar el nombre del agente que contendrá los módulos creados para cada consulta personalizada. También es recomendable usar el parámetro --prefix\_module ya que este nos permitirá asignar un prefijo a los módulos, lo que puede ser util para reconocerlos más rápido y diferenciarlos si creamos varias ejecuciones para bases de datos diferentes.

**--CONF** [![image-1656438528074.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-06/scaled-1680-/image-1656438528074.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-06/image-1656438528074.png) Una vez hecho esto, daremos a "crear". Una vez hecho esto, solo queda llamarlo por lo que iremos a la vista de algún agente y crearemos un módulo de complementos: [![image-1646741530197.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-03/scaled-1680-/image-1646741530197.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-03/image-1646741530197.png) Le daremos un nombre y en el apartado "plugin" pondremos el que acabamos de configurar. Una vez hecho esto, damos a crear. Si el modulo se muestra con 1, quiere decir que se esta ejecutando correctamente # Módulos generados por el plugin El plugin creará un agente con el nombre que hayamos puesto con el parametro --agent\_name. [![image-1661255594501.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/scaled-1680-/image-1661255594501.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/image-1661255594501.png) Y creará los siguientes módulos:
cpu_percent
memory_percent
io_consumption_percent
storage_percent
storage_used
storage_limit
serverlog_storage_percent
serverlog_storage_usage
serverlog_storage_limit
active_connections
connections_failed
backup_storage_used
network_bytes_egress
network_bytes_ingress
pg_replica_log_delay_in_seconds
pg_replica_log_delay_in_bytes
[![image-1661255733199.png](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/scaled-1680-/image-1661255733199.png)](https://pandorafms.com/guides/public/uploads/images/gallery/2022-08/image-1661255733199.png)