Integrating Prometheus with Vodia PBX enables effective monitoring of your phone system’s performance. Start by creating an API account on Vodia PBX to grant access to Prometheus, followed by the installation of Prometheus on DigitalOcean. Update the prometheus.yml file to include your PBX as a target by configuring the DNS, username, and password. Explore the Vodia API for available system stats, such as CPU usage and memory. Finally, create custom stat panels in Prometheus to visualize and track these key performance metrics in real time.
Prometheus is an open-source monitoring and alerting toolkit that is part of the Cloud Native Computing Foundation. By integrating it with Vodia PBX, you can effectively monitor and manage your phone system's performance. Here’s how to get started:
Step 1: Create an API Account on Vodia PBX
To allow Prometheus to access Vodia PBX data, you need to create an API account. Follow these steps:
Log in to Vodia PBX as an Administrator:
Navigate to the system level where you can manage user accounts.
Create a New User Account for API Access:
Go to the Administrator section.
Create a new account with the following details:
Account: Choose a user name.
API Access: Enable API access.
Type: Set the account type to Regular.
Password: Set a strong, secret password.
Save the Configuration:
Save the user account configuration.
Keep the username and password handy, as you will need them for Prometheus to access Vodia PBX data.
Once your server is set up, you can access the Prometheus user interface by going to http://your_server_ip:9090/
Setting up the .yml file
By default, Prometheus is set up to monitor itself and Node Exporter. To monitor more systems, you need to update the configuration file located at: /etc/prometheus/prometheus.yml
3 things need to be changed in the Prometheus .yml file config file
targets: ['123.vodia.com'] Here is where you will set the target - in this case it will be your PBX DNS name
username: 'prometheus'
password: 'prometheus'
Note: Do not remove the ' ' and [ ] in the config file leave it as is and change the value
Once you have edited the config file, you can modify the prometheus.yml using nano or any edit you desire by copy-pasting the config or simply creating a new .yml file and renaming the old file.
Restart the service by sudo systemctl restart prometheus
Check the Prometheus and click on System Stats - this will show all of the available APIs for Prometheus, and you will see an Example Response. Click on "view more" and it should look like this:
I have bolded all of the stats you can use as an examples, there's no need to copy the whole thing
# pbxctrl 69.3.2.beta
# HELP system_cpu_srv_max Peak usage of the CPU # TYPE system_cpu_srv_max gauge system_cpu_srv_max 0 1719852690061
# HELP system_cpu_srv_avg Average Load # TYPE system_cpu_srv_avg gauge system_cpu_srv_avg 0 1719852690061
# HELP system_cpu_ctrl_max Peak usage of the CPU # TYPE system_cpu_ctrl_max gauge system_cpu_ctrl_max 25 1719852690061
# HELP system_cpu_ctrl_avg Peak usage of the CPU # TYPE system_cpu_ctrl_avg gauge system_cpu_ctrl_avg 2 1719852690061
# HELP system_memory_all Total # TYPE system_memory_all gauge system_memory_all 172928 1719852690061
Creating a stat panel on Prometheus
Click "add panel" and enter the Vodia API cmd - in this case system_cpu_srv_max, then press execute: you can create many panels to monitor the PBX.
Vodia’s enterprise VoIP solution provides a versatile and scalable communications platform tailored to businesses of all sizes. The Vodia PBX enables high-quality VoIP calls, with features like scalability, robust security and a range of rich functionalities. Its adaptability across devices and cloud environments makes it highly flexible for diverse IT infrastructures. For hybrid workplaces, Vodia’s system supports multiple network interfaces, eliminating the need for VPNs by enabling seamless communication for remote and on-site staff. Integrating easily with major SIP-based devices and third-party tools Vodia helps enterprises streamline their workflows with unified communications across voice and messaging.
The Vodia PBX provides businesses with a comprehensive telephony solution designed for both on-premise and cloud systems, offering features like audio conference rooms, auto attendants, voicemails, call forwarding, and ring groups. A ring group, or hunt group, directs incoming calls to designated team members using strategies like simultaneous or sequential ringing, ensuring calls reach an available agent quickly. Vodia’s PBX supports multi-stage call routing, customizable ring melodies, CRM integration, and options like music on hold and call recording. Ideal for enterprises managing low-volume call groups, Vodia’s system enhances accessibility and call management efficiency for businesses worldwide.
The Vodia On-Premise PBX (Private Branch Exchange) is a versatile communication solution that enables businesses to manage calls efficiently within their own network. It supports various operating systems and minimizes resource use while offering features like conferencing, instant messaging, and integration with mobile and VoIP devices. This system emphasizes data privacy, allowing companies to maintain control over their information, and provides customizable options for enhanced productivity. With its robust architecture, the Vodia PBX ensures reliability and easy backups, making it an excellent choice for businesses aiming to modernize their communication infrastructure while reducing long-term costs.