LogoLogo
Help
  • Overview
    • Introduction
    • Characteristics
    • Platforms
  • INITIAL Installation
    • 1. Instructions by platform
      • ProSBC Requirements Matrix
      • Baremetal Installation
        • List of Supported Network Interface Cards
        • SBC Certified Hardware
          • High Performance Baremetal Server
          • Medium Performance Baremetal Server
          • Ciena 3906mvi server for Customer Premises Equipment (CPE)
          • Qotom Barebone server for Customer Premises Equipment (CPE)
          • Lanner Barebone server for Customer Premises Equipment (CPE)
          • Telco Systems virtualization platform on Lanner NCA-2510 server for Customer Premises Equipment(CPE)
      • Virtual, self-hosted Installation
        • Virtual - Proxmox
        • Virtual - VMware
          • Launching an Instance of VMware vSphere
          • Deploying ProSBC on VMware
          • Adding Network Interfaces in VMware
          • Configuring Passtrough interfaces on VMware
      • Cloud Installation
        • Cloud - AWS
          • AWS Installation
          • Cloud Formation Installation
          • Instance Upgrade
          • AWS Additional Interface
          • AWS Installation Troubleshooting
          • Recovering an Elastic IP address
        • Cloud - Azure
    • 2. Initial Configuration
      • Initial Setup
        • SBC Management IP configuration
      • Basic configuration
        • Configuring IP interfaces
        • Creating a SIP stack
        • Creating a SIP transport server
        • Allocating an SIP NAP
        • Allocating a SIP open NAP
        • SIP Transport DNS settings
        • Creating a first call route
    • 3. Uploading a License
      • Host-control
        • SELinux
        • SELinux management
      • Add/Change Licenses
        • Add/Change Licenses Manually
  • Use Cases
    • Applications
      • Carrier Interconnection
      • Monitoring as a Service (MaaS)
      • NGN Interconnection
      • Operator Interconnection
      • SIP subscribe notify publish forwarding
      • STIR/SHAKEN
      • Transcoding
      • SIP Trunking
      • Hosted PBX
      • SIP Network Peering
      • Remote Workers
    • Interoperability Examples
      • STIR/SHAKEN with Transnexus and ClearIP
      • Fraud Detection [YouMail]
      • Skype Connect
      • Skype for Business S4B TCP
      • Skype for Business S4B TLS
      • Asterisk
      • 3CX
      • FreePBX
      • FusionPBX
      • FreeSWITCH
      • Twilio
      • Sippy
      • Avaya IP Office
      • Cisco UCM 12
      • Brekeke PBX
      • VitalPBX
      • Yeastar P-Series Cloud
      • VoIP.ms
      • Wildix
  • CONFIGURATION DETAILS
    • Configuration By Web Portal Category
      • System Settings
        • Setting the Role to Standalone
        • Setting the Role to a Primary Unit in a 1+1 System
        • Setting the Role to a Secondary Unit in a 1+1 System
        • Resetting the Host Role
        • Resetting the Network Device Role
        • Create Session Border Gateway Access Control List (ACL)
        • Session Border Gateway: Advanced Parameter Settngs
        • Create Session Border Gateway Access Control List (ACL) Filters
        • Connecting to the Web Server and Logging on to the Web Portal
        • Logging Off
        • Modifying Security Settings
        • Creating Web User groups
        • Creating Web Users
        • Modifying Web User Permissions
        • Enabling and Disabling a User
        • Deleting a User
        • Accessing Audit Logs
        • Activating the Configuration
        • Configuring a Web Portal Profile
        • Configuring the Date, Time, Timezone and NTP servers
        • Configuring the DNS
        • Create HTTP Service
        • Use HTTPS service
        • Configure HTTPS certificates
        • Configuring letsencrypt certificate
        • Configuring the ICMP
        • Configuring the SSH
        • Upgrade Telcobridges linux software packages
        • Retrieving a Software Release
        • Uploading a Software Release
        • Activating a Software Release
        • Retrieving a License
        • Uploading a License
        • Database Backup
        • Downloading a Database Backup
        • Uploading a Database Backup
        • Restoring a Database
        • Enabling the SNMP Agent
        • Configuring the SNMP Agent
        • Creating an SNMPv1/SNMPv2 Community
        • Creating an SNMPv3 User
        • Creating an SNMP Trap Destination
      • IP Network Settings
        • Configuring a Virtual Port
        • Configuring a VLAN
        • Configuring an IP Port Range
        • Configuring IP Interfaces
        • Configuring NAT Traversal
          • Local NAT Traversal
          • Remote NAT Traversal
        • DNS Configuration
          • Creating a DNS Local Entry
        • Configuring VoIP Interfaces
      • SIP
        • Creating a SIP Stack
        • Creating a SIP Transport Server
        • TLS/SRTP
          • Creating TLS Certificates
          • Adding TLS Certificates
          • Configuring TLS Profiles
        • Enabling SIP-I/SIP-T
        • SIPREC Forwarding
      • SIP Registrar
        • Creating a SIP Domain
        • Creating a SIP Registrar
        • Creating a SIP Register Filtering Rule
        • Creating a SIP Register Filtering Rule Condition
        • Creating a SIP Register Filtering Rule Action
      • Network Access Points (NAP)
        • Allocating a SIP Open Network Access Point (NAP)
        • SIP NAP Polling
      • NAP Profiles
        • Profile SDP Description
        • Fax Settings
          • Configuring Fax Relay
          • Configure Fax Passthrough
          • Configure Fax T38
          • Configure Fax NSE
          • Configure Fax VBD
      • Call Routing
        • Creating a First Call Route
        • Enable Flexible NOA Routing Script
        • Add NOA Columns in Routes
        • Import Customized Routing Script
        • Add Customer Column in Routes
        • Add Customized Filter Script To Main Script
        • Adding Label Routing to a Routing Script
        • Assign Routing Script Database Files to the Gateway Application
        • Add Digitmap Files to the System
        • Add Routeset Definition Files to the System
        • Assign Definition Digitmap Files on a per NAP Basis
        • Generate Dynamic Routes
        • Steps to configure label routing for Group of DIDs to a single outbound NAPs
        • Steps to configure label routing for Group of DIDs to multiple outbound NAPs
        • Group of DIDs to multiple outbound NAPs: Load-sharing mode
        • Group of DIDs to multiple outbound NAPs: Priority Mode
        • Update the Digitmap Files
        • Update the Routeset Definition Files
        • Configuring RADIUS Authorization
        • Importing a RADIUS Custom Dictionary
      • Lawful Intercept
        • Lawful Intercept Status
        • Verifying lawful interception
        • Importing a Lawful Interception .CSV File
        • Enabling Lawful Interception in a Routing Script
        • Configuring Lawful Interception
      • Call Detail Records (CDR)
        • CDR Variables
          • Call statistics format
        • Retrieve Text CDRs
          • Automatic CDR Retrieval
        • RADIUS CDRs
          • Configuring RADIUS
          • Adding RADIUS Server(s)
          • RADIUS CDR attributes
      • Routing Scripts
        • Development Guides & Tutorials
          • Accessing Routing Script Parameters
          • Parameter Mapping
          • Script Parameters Definition
          • Script Parameters Definition for SIP
          • Accessing Information about Registered Users
          • Route Parameters and Call Routing
          • Playing prompts, announcements, and tones
          • Recording
          • User-to-User Information
          • Radius Authorization
          • ENUM Query
          • DNS Query
          • Call Diversion Options
          • Call Transfer Requests
          • Redirection
          • Connect Number
          • Terminating Calls
          • NAP Status and other NAP Information
          • Telephony Services (CNAM Requests over SS7)
          • Custom User Context
          • Routing Script Tests
          • Create New Routing Script
          • Enable Routing Script
    • Configuration By Use Case
      • SIP Trunking Configuration
        • Configuration Files for SIP Trunking Scenario
        • SIP Trunk Configuration Instruction with 3CX
        • SIP Trunk Configuration Instruction with FreePBX
        • SIP Trunk Configuration Instruction with FusionPBX
        • SIP Trunk Configuration Instruction with FreeSWITCH
        • SIP Trunk Configuration Instruction with Twilio Elastic trunking
        • SIP Trunk Configuration Instruction with Avaya IP Office
        • SIP Trunk Configuration Instruction with Brekeke PBX
        • SIP Trunk Configuration Instruction with Avaya IP Office
        • SIP Trunk Configuration Instruction with Yeastar P-Series Cloud
        • SIP Trunk Configuration Instruction with Cisco UCM
        • SIP Trunk Configuration Instruction with VoIP.ms SIP trunking
        • SIP Trunk Configuration Instruction with Wildix Cloud VoIP PBX
        • Configuration for Adding ProSBC as a SIP Trunk in the FreePBX Server
        • FreePBX Extension Creation
        • FusionPBX SIP Trunk Creation
        • FusionPBX Extension Creation
        • FreeSWITCH SIP Trunk Creation
        • Twilio Elastic SIP Trunking Configuration
        • Sippy SIP Trunk Creation
        • Avaya IP Office Trunk Creation
        • Cisco UCM 12 Trunk Creation
        • Adding ProSBC as a SIP Trunk in the Brekeke PBX
        • VitalPBX Extension Creation
        • Adding ProSBC as a SIP Trunk in the Yeastar P-Series Cloud
        • Adding ProSBC as a SIP Trunk in the Wildix Cloud VoIP PBX
        • SIP Trunk Configuration Instruction with VitalPBX
        • VitalPBX SIP Trunk Creation
      • Configuring SIP Registration to SIP Proxy
      • Configuring a Hosted PBX
      • Multiple Domains/Hosted PBXs
      • SIP Network Peering / IP Carrier Interconnection
      • Remote Workers
        • Configuration Files for Remote Office/Workers
        • Remote Workers Configuration Instruction with FusionPBX
        • Remote Workers Configuration Instruction with 3CX
        • Remote Workers Configuration Instruction with FreePBX
        • Remote Workers Configuration Instruction with VitalPBX
      • ProSBC and ClearIP (TransNexus)
        • Configuration for STIR/SHAKEN with Transnexus' ClearIP service
        • Configuration for CNAM Verification and Robocall Analytics with Transnexus' ClearIP service
        • Configuration for Robocall Mitigation with Transnexus' ClearIP service
        • Configuration for 302 Redirect routing with Transnexus' ClearIP service
        • Configuration for CAPTCHA Authentication – 302 Redirect with Transnexus' ClearIP service
        • Configuration for STIR/SHAKEN with Transnexus' ClearIP service
      • Transcoding Unit Configuration
        • Baremetal and Virtual Machine
        • Show the Hardware Units menu
        • Adding Transcoding Unit
      • Configuration for Adding YouMail Script to Routing Scripts
      • Skype Connect Example Configuration
      • Skype for Business Example Configuration
      • 3CX Phone Provisioning Configuration
        • Configuration for 3CX PBX Server with the ProSBC to receive T38 Faxes
        • Configuration for 3CX PBX Server with the ProSBC as SIP trunk
      • SIP Emergency
      • SIP registration forwarding
        • Creating a SIP Domain
        • Configuring SIP Registration for Open NAP
        • Configuring SIP Registration for regular NAP
      • RTP no-anchoring
        • Parameter: Allow low-delay media relay
          • Configuring an IP Port Range
        • Creating Profiles
          • Modifying SDP Profile Settings
          • Modifying SIP Profile Settings
          • Modifying RTP and Audio Settings
          • Modifying FAX Relay Profile Settings
          • Modifying Telephony Profile Settings
          • Modifying Tones and Call Progress Options
          • Modifying IVR Record Profile Settings
          • Modifying LNP Profile Settings
          • Modifying Multilevel Precedence and Preemption (MLPP) Options
          • Modifying Call Transfer Profile Settings
          • Modifying Tone Definition Profile Settings
    • Configuration Parameters (all)
    • Routing Script - SIP 302 Handling
  • Maintenance & Troubleshooting
    • Maintenance Guide
      • Check Disk Space
      • ProSBC Processor Usage
      • Troubleshooting Toolpack
      • Restoring a Database
    • System Upgrades
      • Migrate current database
      • Upgrade Telcobridges linux software packages
    • Software version release notes
    • Software version release download
    • ProSBC public roadmap
  • Troubleshooting & Support
    • Troubleshooting Tips & Actions
      • Configuring Call Trace
        • Retrieving Call Trace
        • Call Trace Filter Parameters
      • Creating a test call
      • tbsigtrace: Signaling trace capture tool
        • Accessing Device
          • TMG:Change Management IP Address
          • Password less ssh
          • How to setup ssh tunnel with PuTTY
        • Live Signaling Capture with tbsigtrace
      • How to Get Rid of Sub Optimal Warning
      • How to Lower The Trace Level on an Application
      • TBReport
      • VoIP Ethernet Capture on a ProSBC
      • Enabling Call Recording
      • Accessing the Call Recording
      • Routing Scripts
        • Update Your Routing Scripts
        • Disabling a Call Route
    • Troubleshooting Common Problems
    • Support Links
      • Support Forums
      • ProSBC Training
      • Customer Dashboard User Guide
      • Contacting TelcoBridges technical support
      • Frequently Asked Questions
      • Sending Large Files to TelcoBridges
    • How to use tbx cli tools remote program
  • Tools, Tips, and Tricks
    • TelcoBridges Magic Bookmark
    • Video Library
    • RESTful API
      • Postman Examples
      • Ruby Examples
      • TBConfig Examples
        • Exporting a Configuration
        • Importing a Configuration
        • Activating a Configuration
        • Updating a Route
        • Dropping Calls
      • ProSBC:Restful API SIP Domain
      • ProSBC:Restful API SIP Domain Registrar
      • Extracting Call Traces with the API
    • TBStatus API
      • Tbstatus monitoring
      • Status API
      • Dropping calls
  • Appendices
    • Appendix A: Glossary
      • Glossary: Call Detail Records (CDR)
      • Glossary: Call routing
      • Glossary: DNS
      • Glossary: Mean Opinion Score (MOS)
      • Glossary: NAP
      • Glossary: RADIUS
      • Glossary: Ringback tones
      • Glossary: SAP
      • Glossary: Signaling protocols
      • Glossary: SIP
        • Glossary: Route retry
        • Glossary: SIGTRAN
        • Glossary: SIP-I/SIP-T
        • Glossary: SIP gateway
        • Glossary: SIP Registration
      • Glossary: Softswitch
      • Glossary: Toolpack
        • Glossary: Web server
        • Glossary: tboamapp
          • Glossary: Tbtoolpack Service
            • System Id
              • Gateway Port
          • Primary/Secondary
          • Master/Slave
            • Active/Standby
      • Glossary: Unified communications
      • Glossary: Web Portal
      • Glossary: DTMF Relay
    • Appendix B: Product Datasheets
Powered by GitBook
On this page
  • Download the script archive
  • Copy the script archive to TMG
  • Script Usage
  • Adjust configuration file
  • Execute the script in deamon mode
  • Execute the script on the Web Portal
  • Collect the data in .csv files
  • Access data in the SQLite database

Was this helpful?

  1. Tools, Tips, and Tricks
  2. TBStatus API

Tbstatus monitoring

PreviousTBStatus APINextStatus API

Last updated 8 months ago

Was this helpful?

Tbstatus monitoring is a ruby script which makes use of the to gather statistics on a system. It periodically collects statistics according to a configuration file (tbstatus.yml). Results are presented in .csv files per selected module. This includes any statistics that tbstatus API can gather. E.g. trunks, signaling links status, ISUP interface status, NAPs status, calls status, etc.

Note: tbstatus.rb ruby script is different from the .

Download the script archive

Download the script here: .

This archive contain the gzip tar archive named tbstatus_monitor.tgz:

  • tbstatus.rb : Status script.

  • tbstatus.yml : Configuration file

  • Instructions.txt : Quick instruction

Copy the script archive to TMG

  • Transfer the .tgz file containing the script tbstatus.rb, and the configuration file tbstatus.yml to the host of TMG800, TMG3200 or TMG7800-CTRL using sFTP (Filezilla or Winscp)

  • Uncompress the file

tar xzf tbstatus_monitor.tgz
cd tbstatus_monitor

Script Usage

 
[Tbstatus_monitor]# ./tbstatus.rb 
Usage: tbstatus.rb [path]
  path: '/*', /nap or any other supported path

Usage: tbstatus.rb [GROUP]
  GROUP: any defined GROUP in yml config file in CAPITAL letters
         (:all to print them all)

Usage: tbstatus.rb [command]
  command: :all to print statistics for all defined GROUPS
           :dump to print all statistics for all supported paths

Usage: tbstatus.rb -d
  Goes into deamon mode, and start logging system statistics
  according to YML config file

CFG: -f can be used as first argument to specify YML cfg file

Adjust configuration file

Change the configuration file to select the required monitoring modules. This can be done by editing the tbstatus.yml file, you will see the below lines within.

  • To specify the output .csv file name

slog_file: DATABASE.csv
  • Or, output in a SQLite database file

slog_file: DATABASE.sqlite
  • To specify the file rotation period

slog_rotation_period: daily
  • To specify the statistics gathering interval

slog_update_interval: 15m
  • Configure the required module statistics

Comment out the lines (statistics) which are not required with a "#" sign. This reduces the number of files and the columns within files generated. Below example gathers the ISUP interface cic group statistics and put the result in ISUP_INTERFACE_CIC_GROUPS.csv files:

  - ISUP_INTERFACE_CIC_GROUPS:
      slog_file: ISUP_INTERFACE_CIC_GROUPS.csv
      slog_rotation_period: daily
      slog_update_interval: 15m
      paths:
        - /isup/interface/cic_group:
#         - desired_group_state
#         - start_continuity_check
#         - interface_down
          - idle_cnt
          - incoming_cnt
          - outgoing_cnt
          - locally_blocked_cnt
          - remotely_blocked_cnt
          - locally_remotely_blocked_cnt
          - reset_cnt
          - suspended_cnt

To get the list of available path or a short description of each available statistics fields:

Instead of .csv files, statistics can be saved in a SQLite database file. Below example gathers the NAPs statistics:

  - NAPS:
      slog_file: NAPS.sqlite
      slog_rotation_period: daily
      slog_update_interval: 10s
      paths:
        - /nap:
          - available_cnt
          - unavailable_cnt
          - availability_percent

Execute the script in deamon mode

  • Change the script file permission

chmod +x tbstatus.rb
  • Execute tbstatus script in daemon mode

nohup ./tbstatus.rb -d &
  • To stop it, kill the process

[root@TB007036 ~]# ps -ef | grep tbstatus
 root 20800 15165 0 04:17 pts/0 00:00:01 /usr/bin/ruby ./tbstatus.rb -d
 root 23191 15165 0 04:46 pts/0 00:00:00 grep tbstatus
[root@TB007036 ~]# kill -9 20800

Execute the script on the Web Portal

Alternatively, you can start the tbstatus monitor tool in with Toolpack. Therefore, the script will start and stop automatically at the same time as Toolpack service:

  • On the Web Portal, Go to Host -> Applications -> Create New Application

Name: tbstatus_monitor
Application Type: user-specific
bin path: /root/tbstatus_monitor/tbstatus.rb
working path: /root/tbstatus_monitor
Command line arguments: -f tbstatus.yml -d

Collect the data in .csv files

  • Multiple .csv files will be created in the same directory. They will be rotated and zipped according to the yml configuration. These files can be extracted from the unit with sFTP, or SSH scp commands to be analyzed by an external system.

Example files:

ADAPTER_IP_INTERFACES.csv
ADAPTER_LINE_INTERFACE_LINE_SERVICES.csv
ADAPTER_LINE_INTERFACES.csv
ADAPTER_SENSORS.csv
ADAPTER_USAGE.csv
DATABASE.csv
ISUP_INTERFACE_CIC_GROUPS.csv
ISUP_INTERFACES.csv
MTP2_LINKS.csv
MTP3_LINKS.csv
MTP3_LINKSETS.csv
MTP3_ROUTES.csv
NAPS_24hour_data.csv
NAPS.csv

The result of ISUP_INTERFACE_CIC_GROUPS.csv with the above configuration would be:

date,time,path,item_name,idle_cnt,incoming_cnt,outgoing_cnt,locally_blocked_cnt,remotely_blocked_cnt,locally_remotely_blocked_cnt,reset_cnt,suspended_cnt
"09/17/2014","22:24:22",/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0
"09/17/2014","22:24:22",/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0
"09/17/2014","22:24:22",/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0
"09/17/2014","22:24:22",/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0
"09/17/2014","22:30:00",/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0
"09/17/2014","22:30:00",/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0
"09/17/2014","22:30:00",/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0
"09/17/2014","22:30:00",/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0
"09/17/2014","22:45:00",/isup/interface/cic_group,C011107_00,30,0,0,0,0,0,0,0
"09/17/2014","22:45:00",/isup/interface/cic_group,C011107_02,31,0,0,0,0,0,0,0
"09/17/2014","22:45:00",/isup/interface/cic_group,C011107_04,31,0,0,0,0,0,0,0
"09/17/2014","22:45:00",/isup/interface/cic_group,C011107_05,31,0,0,0,0,0,0,0

Columns: date, time, path and item_name are always there. All other columns depends on the selected fields in the configuration file.

Lines: one per paths/item per update interval; in that example, there is 4 CIC groups. Note that the first entries are written at 22:24 because the script was started at that time.

Access data in the SQLite database

  • Check for the database file which matches the configuration in tbstatus.yml. Following the example above, it is:

NAPS.sqlite
  • Check for the database table name

[root@165 tbstatus_monitor]# sqlite3 NAPS.sqlite '.tables';
/nap
  • Access the statistics in the database file

[root@165 tbstatus_monitor]# sqlite3 NAPS.sqlite 'SELECT * FROM "/nap" ORDER BY oid DESC LIMIT 10';
2014-05-26 15:44:51|TBSERVER|1500|0|100
2014-05-26 15:44:51|SS7_NAP|30|0|100
2014-05-26 15:44:50|SIP_NAP_1PLUS1|1500|0|100
2014-05-26 15:44:50|ISDN_1_1|30|0|100
2014-05-26 15:44:50|CANDY|0|1500|0
2014-05-26 15:44:40|TBSERVER|1500|0|100
2014-05-26 15:44:40|SS7_NAP|30|0|100
2014-05-26 15:44:40|SIP_NAP_1PLUS1|1500|0|100
2014-05-26 15:44:40|ISDN_1_1|30|0|1

tbstatus API
tbstatus command-line tool
media:tbstatus_monitor.zip
View status statistic paths
View statistics field description