Small Signaling Language

OpenSignals defines a small language set of signals and states related to operations, outcomes, and service quality. These generalized standard terms, applicable across different runtimes and environments, are then mapped to more specific behaviors and responses via instrumentation. Understanding the execution of software, in particular microservice interactions, is greatly simplified with standard terms allowing the first and second-level support teams to work more effectively and efficiently in directing further sensory data collection and interventions. With OpenSignals, there is less of a need to have in-depth knowledge of the complete technology stack employed and deployed; only an understanding of the observational language and the status assessment grid model is necessary for effective service level management (SLM).

Local Status Scoring

Determination of the status of a service is inferred from one or more signal firings, which are scored using a highly configurable scorecard – locally and globally. Any assessment of service quality is local to the source of signaling or service grouping. Within a large system of microservices, availability, for example, is not determined based on the uptime of the service from the metrics it publishes. Instead, measured availability occurs at each source of a service-to-service interaction. The scoring of signaling at a source (call site) for a remote service allows for greater diversity in the configurable sensitivity to particular set signals and how these are, in turn, mapped to a status determined over a period.

Lightweight Event Tracking

OpenSignals is lightweight in terms of measurement, data collection, and data transmission. Only the service name, signal, and orientation need to be captured. There is no need for the sequencing of signals or the pairing up of one signal with another. Signals appear at face value much like event counters — but counters of specific operations and outcomes for service-to-service relationships. The overhead of OpenSignals is less than metrics and nearly as contextual as a trace. OpenSignals is ideally suited to the new world of asynchronous and deferred execution. It dramatically eases instrumentation integration as there is no need to laboriously track context and time across threads and queues. A signal is what it is; it is the message.

Social Status Dimensionality

OpenSignals offers a new innovative model, a 5×3 grid, for viewing availability and reliability of service for each of its offered endpoints, from multiple ingress (dependant) and egress (dependency) points, and over five operational status values. Service availability and reliability are not binary at a point in time; it is graded for each service and endpoints. OpenSignals presents an assessment of quality much like a social network with services judging each other and a collective intelligence emerging.

Simplified Dashboard Standard

Companies are drowning in the proliferation of custom monitoring dashboards. Operational teams are spending far too much time creating, managing, and cataloging dashboards. OpenSignals, with its small observational language and scalable model of service quality inference, allows for the creation of a single standard service level management dashboard.

Improved Resilience Engineering

The signals and status values modeled and managed by an OpenSignals runtime allow for improved resilience as they serve as the basis for circuit breakers and adaptive control valves. OpenSignals signals can be easily transmitted across service and proxy boundaries offering a means to adaptively improve service quality beyond just distributed trace context propagation.

Highly Extensible Tookit

OpenSignals is designed to be highly extensible, with the ability to switch in alternative runtime service provider, plugins, event callbacks, and integrations, depending on the context and environment. Whilst an open-source license increases the likelihood of collaboration an Open API, such as OpenSignals, increases the chance of multiple independent implementations.