serverlessworkflow / specification

Contains the official specification for the Serverless Workflow Domain Specific Language. It provides detailed guidelines and standards for defining, executing, and managing workflows in serverless environments, ensuring consistency and interoperability across implementations.
http://serverlessworkflow.io
Apache License 2.0
740 stars 146 forks source link

Add Workflow KPI extension #108

Closed tsurdilo closed 4 years ago

tsurdilo commented 4 years ago

What would you like to be added:

This request is to add Key Performance Indicators (KPI) spec extension.

Why is this needed:

KPI is very useful to have for runtime workflow analysis tools.

manuelstein commented 4 years ago

Is this more than just tracing? (collect timing and resource usage of each function, step, workflow execution)

So, I believe what we're looking for here are common identifiers in OpenTracing that would mark the KPI and a requirement for the execution (workflow engine, function) to provide these tracing data, so that users of Serverless Workflows have a common way of analysing workflows and are not dependent on the proprietary log/monitoring interfaces. Is that the idea?

ricardozanini commented 4 years ago

Not sure with we should mix non-functional requirements such KPIs to the Workflow definition. Maybe a new schema that takes a workflow as a reference that can be deployed in the platform and turn the execution into KPI data?

tsurdilo commented 4 years ago

@ricardozanini it will be implemented as a workflow extension, so not part of the workflow definition (updated the issue).

@manuelstein: its not really tracing, for that we should have a dedicated "tracing" extension where i agree with can follow OpenTracing. KPI is a set of "expected" values such as cost, max times, error count, event count, etc. It could be used alongside of tracing to display how the measured values compare to the expected ones.

tsurdilo commented 4 years ago

Closed by: https://github.com/serverlessworkflow/specification/pull/109