Skip to content

Workflow

A workflow is a description of a standard ticket lifecycle that specifies:

  • authorization (resources) required to see ticket's details
  • states a ticket may enter
  • authorization (resources) required to make these transitions

LogMan.io Alerts uses the following workflows stored in Library:

  • /Alerts/Workflow/alert.yaml (for tickets with type alert)
  • /Alerts/Workflow/incident.yaml (for tickets with type incident)

Workflow Schema

Workflow Declaration

---
define:
  type: alerts/workflow

workflow:
  open:
    label: {
      'c': "Open",
      'en': "Open",
      'cs': "Otevřený",
    }
    icon: ""
    transitions:
      triaged:
        resources: [lmio:alert:triaged]
      closed: {}
      deleted: {}

  triaged:
    label: {
      "c": "Triaged",
      "en": "Triaged",
      "cs": "Roztříděný",
    }
    icon: ""
    transitions:
      closed: {}
      deleted: {}

  closed:
    resources: lmio:alert:closed
    label: {
      "c": "Closed",
      "en": "Closed",
      "cs": "Zavřený",
    }
    icon: ""
    transitions:
      deleted: {}

  deleted:
    label: {
      "c": "Deleted",
      "en": "Deleted",
      "cs": "Smazaný",
    }
    icon: ""

workflow

There are four states in a standard ticket's lifecycle:

  • open
  • triaged*
  • closed
  • deleted

Warning

Please always use only dafult states of a ticket's lifecycle.

The definition for each state might contain the following attributes:

label

A user-friendly name for a given ticket state with all available language permutations.

icon

A user-friendly visual representation for a given ticket state.

resources

A name or list of the resource(s) the user must be assigned to see ticket's details.

If not specified (no resources section), no special resources required to access ticket's data.

In the above example:

  • any user can access open tickets (no resources section);
  • resource lmio:alert:closed is required to see closed tickets.

transitions

Defines allowed transitions to other states as well as resource(s) the user must be assigned to change ticket's state.

The states can be listed with either:

  • an empty braces { } (no specific resource is needed to move the ticket to a given state), or
  • a name or list of the resource(s) the user must be assigned to in order to move the ticket to a given state.

If not specified (no transitions section), no transition to another state is allowed.

In the above example:

  • transitions from deleted tickets are not allowed (no transitions section);
  • backwards transitions for closed tickets are not allowed (only option deleted in transitions section);
  • to change a ticket state from open to triaged resource lmio:alert:triaged is required;
  • no special resources required to change ticket's state from open to closed or deleted.

Default Transitions

Note

Tickets not modified for 10 years will be closed automatically.

Default transition period can be reconfigured in the model.yaml:

asab:
  config:
    ticket:
      period: 120d

Warning

Note that backward transition from the closed state is not possible at the moment.

Scheduled Transitions

LogMan.io Alerts can open and close tickets automatically both in real time and in form of scheduled transitions. See Schedule Tickets for more details.

*triaged roughly means "in progress", but more precise definition would be "undergoing a security check".