Producer Event Notification Framework developer guide

  • Release version: Australia
  • Updated March 12, 2026
  • 2 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Producer Event Notification Framework developer guide

    The Producer Event Notification Framework for Telecommunications, Media, and Technology allows ServiceNow customers to externally distribute events, such as trouble tickets, using a message-bus within their network. It supports two main message-bus configurations for event publishing: the Hermes Messaging Service (Kafka-based) for cloud instances and an open message bus for both cloud and on-premise instances.

    Show full answer Show less

    Message-Bus Use Cases

    • Hermes Messaging Service: Designed for publishing events via Hermes Kafka on cloud-based ServiceNow instances. This requires prior installation and configuration of the Hermes Messaging Service. It enables seamless outbound API notifications for trouble tickets.
    • Open Message Bus: Suitable for custom message-bus implementations on both cloud and on-premise instances. It supports sending events from ServiceNow to network consumers with flexible configuration options.

    Configuration and Customization

    Implementing either message-bus use case requires configuring system settings and overriding specific script includes within your ServiceNow instance. This ensures proper integration and event delivery through your chosen message-bus.

    Producer System Properties

    Several system properties control the behavior and performance of the Producer Event Notification Framework. These properties can be reviewed and modified via the ServiceNow UI under All > System Properties > All Properties. Key properties include:

    • Logging level (snapinotifmgmt.event.log): Controls debug log verbosity with levels such as alert, error, info, and debug.
    • Mutex lock parameters (snapinotifmgmt.glide.mutex.script.maxspins and spinwait): Define retry attempts and wait times when locking inbound queue records.
    • Inbound queue batch processing limits (snapinotifmgmt.inboundqueue.batch.limit and maxrecords): Manage how many records the scheduler processes per batch and per run, optimizing throughput without overloading system resources.
    • Publisher message bus configuration (snapinotifmgmt.publishermessagebusconfiguration): Selects the message bus used for publishing events—Hermes, open message bus, or both.
    • Scheduler maximum runtime (snapinotifmgmt.schedule.max.runtime): Sets the maximum allowable execution time for schedule jobs before failure is reported, ensuring timely processing.

    Adjusting these properties helps tailor event publishing performance and reliability to your organization's operational requirements.

    The Producer Event Notification Framework for Telecommunications, Media, and Technology enables the external distribution of events, such as trouble tickets, using a message-bus implemented in your network.

    The Producer Event Notification Framework supports two different message-bus use cases:
    1. Publishing events through the Hermes Messaging Service: If you plan to publish events using Hermes Kafka, you must configure the Producer Event Notification Framework for the Kafka message-bus. You can only use this message-bus for cloud-based instances. For details, see Configure the Producer Event Notification Framework to use the Hermes Messaging Service.

      For additional information on how to publish trouble ticket notifications using Hermes, see Producing outbound API notifications using Hermes.

      Note:
      Before you are able to implement this use case, you must already have the Hermes Messaging Service installed and configured on your instance. For details, see Hermes Messaging Service.
    2. Publishing events through the open message bus: If your instance uses a custom message-bus, you must configure the Producer Event Notification Framework to use the open message bus to send events from your ServiceNow instance to consumers on your network. Both cloud-based and on-premise ServiceNow instances can publish events through the open message bus. For details, see Configure the Producer Event Notification Framework to use the Open Message Bus.

      For additional information on how to publish trouble ticket notifications using the open message bus, see Outbound trouble ticket notifications via open message bus.

    This document describes the system configuration that must be performed, including the script includes that must be overridden to deploy these message-bus implementations in your ServiceNow ecosystem.

    Producer system properties

    The following table lists the properties within your ServiceNow instance that control the functionality of the Producer Event Notification Framework. Review the default values of these properties and if necessary, modify them for your specific implementation. To modify these properties, in the ServiceNow UI go to All > System Properties > All Properties.

    Property Description
    sn_api_notif_mgmt.event.log Level of logging to written to the debug logs.
    Valid values:
    • alert
    • crit
    • debug
    • emerg
    • err
    • info
    • notice
    • warning

    Default: err

    sn_api_notif_mgmt.glide.​mutex.​script.​maxspins Maximum number of attempts to acquire a mutex lock on the records in the inbound queue.

    Default: 100

    sn_api_notif_mgmt.​glide.​mutex.​script.​spinwait Time to wait between attempts to acquire a lock on the records in the inbound queue.

    Unit: Milliseconds

    Default: 100

    sn_api_notif_mgmt.​inboundqueue.​batch.​limit Number of records that the scheduler will pull and process from the inbound queue at one time (one batch).

    Default: 200

    sn_api_notif_mgmt.​inboundqueue.maxrecords Maximum number of records that the scheduler will pull from the inbound queue for one scheduler run. This value is used in conjunction with the sn_api_notif_mgmt.inboundqueue.batch.limit parameter.

    For example, if the batch limit is set to 50 and the maxrecords is set to 200, and the number of records that are in the inbound queue is 130, the scheduler would pull three different batches of records in a single run; two with 50 records and one with 30 records. If the number of records in the inbound queue is 220, the scheduler would pull four batches of 50 records and the remaining 20 records would not be processed until the next time the scheduler runs.

    When setting this value, you must also consider the time that it will take for the scheduler to process multiple batches and set the sn_api_notif_mgmt.schedule.max.runtime value accordingly.

    Default: 200

    sn_api_notif_mgmt.​publisher_message_bus_configuration Defines whether messages are published using the Hermes Messaging Service, the open message bus, or both message buses.
    Valid values:
    • hermes = Hermes Messaging Service
    • openMessageBus = open message bus
    • both = Event/message is sent out on both message buses.

    Default: openMessageBus

    sn_api_notif_mgmt.​schedule.​max.​runtime Max time that a schedule job can run before it fails and reports an error.

    Unit: Milliseconds

    Default: 90,000