Documentation -> Manuals -> Manual devel -> Status/Report Interface
The Status/Report (or SR) is an OpenSIPS framework that allows different components of OpenSIPS (like modules, parts of the core) to publish their status (in terms of readiness) and reports (logs) relevant to their activities.
The base element in the Status/Report framework is the identifier - an status and some reports may be attached to an identifier. All the identifiers do exist within a Status/Report group. So, a group is a set of identifiers - a module or a core may be such groups. For example the drouting module publishes the drouting group where each routing partition is an identifier.
The information attached to an identifier is:
I most of the cases, the status and reports of an identifier are internally produced by the OpenSIPS code - the Status/Report interface just gives you access to the status / report information from outside the code, for monitoring purposes.
The SR Interface provides a script function to check the readiness status of an identifier (or of an entire group), see the sr_check_status( group, [identifier]) function.
The SR Interface provides multiple functions to check/list the status of one/multiple identifiers and to list their reports:
The SR framework raises an event each time the status of a Status/Report identifier changes. See the E_CORE_SR_STATUS_CHANGED event for more details.
The OpenSIPS core provides the core group, with a "main" (default) identifier. The available status are:
The OpenSIPS modules may or may not provide their own groups and identifiers. For this you need to check the module's documentation.
The status_report allow the creation of custom SR identifiers from script level. Even more, it is possible to set the status or to publish a report from script for such custom identifiers.