Skip to content

This project provides Telegraf configuration and scripts to fetch data from Cisco Catalyst Center API endpoints. It allows you to collect metrics and insights from your Cisco Catalyst Center environment and integrate them with your monitoring and analytics tools.

License

Notifications You must be signed in to change notification settings

Walkablenormal/cisco-catalyst-center-telegraf

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

channels4_profile

Cisco Catalyst Center Telegraf Integration

This project provides Telegraf configuration and scripts to fetch data from Cisco Catalyst Center API endpoints. It allows you to collect metrics and insights from your Cisco Catalyst Center environment and integrate them with your monitoring and analytics tools.

🚧 Currently, this project is WIP! Changes to the way data is indexed and parsed may be made! 🚧

Table of Contents

Prerequisites

  • Telegraf 1.31.2 or higher
  • Python 3.12.3 or higher
  • Access to Cisco Catalyst Center API endpoints

Installation

  1. Clone this repository:

    git clone https://github.com/Walkablenormal/cisco-catalyst-center-telegraf.git

    cd cisco-catalyst-center-telegraf

  2. Install required Python packages:

    pip install -r requirements.txt

  3. Copy the Telegraf configuration file to your Telegraf config directory:

    cp * /etc/telegraf/telegraf.d/

Configuration

  1. Open the config.py file and update the following parameters:
  • BASE_URL: URL of your Cisco Catalyst Center instance (string)
  • USERNAME: Your Catalyst Center API username (string)
  • PASSWORD: Your Catalyst Center API password (string)
  • SSL_VERIFY: True if the certificate your Catalyst Center deployment uses is singed by a trusted CA. (bool)

Currently, this file contains the credentials of the Cisco DevNet Always-On Catalyst Center Sandbox.

Usage

  1. Start Telegraf with the new configuration:

systemctl restart telegraf

  1. Verify that data is being collected by checking your configured output destination (e.g., InfluxDB, Prometheus, etc.).

Routes

The following routes are currently implemented:

Route Python file Telegraf config
/dna/intent/api/v1/network-device/ catalyst_center_network_device.py catalyst_center_network_device.conf
/dna/intent/api/v1/client-health catalyst_center_overall_client_health.py catalyst_center_overall_client_health.conf
/dna/intent/api/v1/network-health catalyst_center_overall_network_health.py catalyst_center_overall_network_health.conf
/dna/intent/api/v1/site-health catalyst_center_site_health.py catalyst_center_site_health.conf
/dna/intent/api/v1/compliance catalyst_center_compliance.py catalyst_center_compliance.conf

Roadmap

At some point; the following routes will also be implemented;

  • /dna/intent/api/v1/onboarding/pnp-device
  • /dna/intent/api/v1/topology/physical-topology
  • /dna/intent/api/v1/issues
  • /dna/intent/api/v1/onboarding/pnp-device
  • /dna/intent/api/v1/security-advisory/device-summary
  • dna/intent/api/v1/security-advisory/advisory
  • /dna/intent/api/v1/assurance/health

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the LGPL License.

About

This project provides Telegraf configuration and scripts to fetch data from Cisco Catalyst Center API endpoints. It allows you to collect metrics and insights from your Cisco Catalyst Center environment and integrate them with your monitoring and analytics tools.

Topics

Resources

License

Stars

Watchers

Forks

Languages