Skip to main content

Monitorización

Este proyecto incluye un módulo empaquetado "proc_monitoring", el cual contiene métodos para enviar métricas hacia sistemas Kafka.

Requisitos

Los requisitos para instalar y ejecutar el proyecto son:

  • Un IDE o un editor de código:

    • IDE: PyCharm
    • Editores de Código: Visual Studio Code, Notepad++, VIM
  • Un entorno de Python 3.6.8 mínimo con las siguientes librerías:

    • PyYAML
    • requests
    • paramiko
    • kafka-python
    • library-commons
  • Si se utiliza en Windows, también instalar los paquetes:

    • win-inet-python
  • Opcionalmente, si se requiere ejecutar un entorno local de kafka para realizar pruebas, se pueden utilizar las siguientes imágenes docker para construir el entorno:

    • confluentinc/cp-zookeeper
    • confluentinc/cp-kafka
      En el directorio "docker" hay un fichero para construir el entorno local de kafka con docker.

Instalación

Para instalar el programa localmente o en un Linux remoto:

  1. Descargar o clonar el proyecto desde el repositorio.
  2. Asegurarse de tener un entorno de Python funcional con la versión requerida y los paquetes necesarios.
  3. Activar el entorno de Python que fue creado.
  4. Instalar el módulo ejecutando este comando en la ruta del proyecto:
python setup.py install

Se puede instalar docker y ejecutar el comando docker-compose up en el directorio "docker" para crear un entorno de pruebas con Kafka instalado y así depurar fallos en el envío de métricas a Kafka.

Configuration

Los argumentos para linea de comandos del script principal executor.py son:

  • -cf/--config-file: Describe los nodos lanzados en la ejecución y su configuración.
  • -w/--whatif: Si se establece, el script se ejecutará normalmente pero no cambiará ningún dato persistente.
  • -i/--info: Si se establece, mostrará en pantalla la información de cada uno de los pasos del lanzamiento del script.
  • -d/--debug: Si se establece, aumentará el nivel de información mostrada en pantalla, generalmente solo se usa para depurar errores.
  • -h/--help: Muestra un mensage de ayuda del script.

Para configurar los nodos a monitorizar o modificar el servidor Kafka al que se envían las métricas, modificar el fichero configuration.yaml. Este fichero está dividido en 3 objetos principales, "nodos", "argumentos" y "conexiones":

  • Nodos(nodes): En esta sección los nodos son declarados y configurados. Para añadir un nodo, simplemente añadir una entrada a la lista de nodos, con el parámetro type especificando el nombre completo de la clase a la que debería de ser instanciada, y el parámetro args especificando el diccionario de argumentos que se pasaría a la clase. Cada tipo de nodo que se defina en un futuro, debería de estar documentado en el directorio docs.

  • Argumentos(args): En esta sección los argumentos son creados y definidos. El valor de estos argumentos, es obtenido posteriormente desde la clase nodo concreta para ser utilizado.

  • Conexiones(connection_refs): En esta sección se definen las conexiones necesarias para recabar métricas y enviarlas, como por ejemplo, la uri de la API de NSX y sus credenciales, o la IP del servidor Kafka al que se van a envíar las métricas. Posteriormente se accede a estás conexiones definidas desde la sección args de cada nodo.

Metadata

Release files for proc-monitoring 1.0.1.post3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for proc-monitoring 1.0.1.post3
File Interpreter ABI Platform
proc_monitoring-1.0.1.post3-py3-none-any.whl Python 3 none any Details

Release files / proc_monitoring-1.0.1.post3-py3-none-any.whl

Download URL proc_monitoring-1.0.1.post3-py3-none-any.whl
Size 16.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ef39c05485474ac03db2eb0eddb8ccb129e014e5d903eab0ac3472ab08ef4e95
BLAKE2b-256 checksum
How to use checksums
a3bd6172f6e1e9e93d538c7f7395d77c9216ce029b32c719fa0d50605cc9ded4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.6.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.6.8

Release history Release notifications | RSS feed

This release

1.0.1.post3 This release

1 release file

1.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page