SIP OPTIONS/SUBSCRIBE/NOTIFY

From VoIPmonitor.org
Revision as of 16:45, 4 January 2026 by Admin (talk | contribs) (Add Performance Tuning section with mysqlstore_max_threads_sip_msg)

SIP OPTIONS, SUBSCRIBE, and NOTIFY Messages

This feature processes SIP OPTIONS (qualify pings), SUBSCRIBE, and NOTIFY messages. It is disabled by default to prevent database or storage overload in high-traffic scenarios.

Required Configuration

Enable processing in /etc/voipmonitor.conf. Adjust or add these settings:

# Controls the analysis of SIP OPTIONS, SUBSCRIBE, NOTIFY messages. They can be stored to a PCAP file, seen in SIP Opt. Active, or also stored to the Database.
# Default is 'no'. Options include 'yes', 'nodb', and 'no'.
sip-options = no

# Controls whether to store SIP OPTIONS messages to disk. Note that in situations of high traffic, this could overload the file system. Default is 'no'.
save-sip-options = no

# Enable or disable the analysis and storage of SIP SUBSCRIBE requests. Default is 'no'.
sip-subscribe = no

# Controls whether to store SIP SUBSCRIBE messages to disk. Like OPTIONS, this could overload the system in high-traffic scenarios. Default is 'no'.
save-sip-subscribe = no

# Enable or disable the analysis and storage of SIP NOTIFY requests. Default is 'no'.
sip-notify = no

# Controls whether to store SIP NOTIFY messages to disk. This is similar to OPTIONS and SUBSCRIBE in that it can overload the system in high-traffic scenarios. Default is 'no'.
save-sip-notify = no

To enable OPTIONS pings (qualify evaluation), set sip-options = yes.

GUI Usage

Access via GUI > SIP Opt., Subsc., Notify to view, filter, or delete these messages.

  • Settings: Configure max OK qualify duration (default: 2000ms) and additional OK response codes (e.g., 404).
  • Active/Stored Views: Green records indicate OK (no timeout exceeded, 200 OK response). Red records show failures (other responses or timeouts).
  • Alerts: Use "SIP Opt/Sub/Notify Qualify" alert type for red records.

This setup allows monitoring OPTIONS pings like heartbeat checks for availability, providing statistics similar to ICMP ping (e.g., latency, response codes).

Performance Tuning

OPTIONS, SUBSCRIBE, and NOTIFY messages can generate a very high volume of database writes because they are sent frequently (even for idle devices). This can cause the sip_msg queue in the SQL queue to grow, leading to delays in storing these messages.

If you experience high sip_msg queue counts:

  • Increase database threads specifically for SIP messages:
mysqlstore_max_threads_sip_msg = 4
  • Reduce data retention: Use cleandatabase_sip_msg to automatically delete old records and keep the table size manageable. See Data_Cleaning for details.
  • Use nodb mode: Set sip-options = nodb, sip-subscribe = nodb, and sip-notify = nodb to process messages for the GUI's "Active" view but do not store them in the database. This is recommended if you only need real-time monitoring and alerts.
  • Disable collection entirely: If you do not need these messages at all, set all options to no.

See SQL_queue_is_growing_in_a_peaktime for more information on SQL queue performance tuning.

AI Summary for RAG

Summary: This article covers enabling and using SIP OPTIONS (qualify pings), SUBSCRIBE, and NOTIFY in VoIPmonitor. It explains default disabled state to avoid overload, configuration options in voipmonitor.conf, and GUI features for viewing, settings, and alerts.

Keywords: SIP OPTIONS, qualify ping, SUBSCRIBE, NOTIFY, voipmonitor.conf, GUI settings, alerts, storage overload, response codes, latency monitoring

Key Questions:

  • Why is SIP OPTIONS processing disabled by default?
  • How do I enable SIP OPTIONS for qualify pings?
  • What configuration options control storage of these messages?
  • How can I view and filter OPTIONS/SUBSCRIBE/NOTIFY in the GUI?
  • How do I set up alerts for failed qualify pings?
  • What do green and red records mean in the SIP Opt. views?
  • How does this feature help monitor endpoint availability without ICMP?