Sphinx Documentation¶
The Robusta documentation is written using Sphinx.
We wrote a custom Sphinx extension named autorobusta to generate docs for Robusta actions.
For example, we can generate docs for the builtin logs_enricher
action as follows:
.. robusta-action:: playbooks.robusta_playbooks.alerts_integration.logs_enricher
You can see the output in the Robusta documentation itself for the Logs enricher action.
The Sphinx extension reads the action's source code (in this case, the logs_enricher source code source code) and uses that to generate the docs in a standard format. You can modify the generated documentation in two ways:
By annotating your source code
By passing parameters to the Sphinx directive.
Warning
The documentation process isn't completely automated yet!
After adding an action to Robusta, you should update the relevant actions page
and add one line with a robusta-action
directive for your new action. From there, everything else is automated.
Annotating your source code¶
Warning
Sorry, we haven't gotten around to documenting this part yet! Feel free to open a PR to fix that.
Parameters¶
You can customize the Sphinx output by passing parameters to the directives.
Recommending a trigger¶
You can explicitly override the trigger used in autogenerated examples by passing a second parameter to the robusta-action
directive.
For example:
.. robusta-action:: playbooks.robusta_playbooks.grafana_enrichment.add_deployment_lines_to_grafana on_deployment_update
You can further customize it by adding parameters to the autogenerated trigger:
.. robusta-action:: playbooks.robusta_playbooks.bash_enrichments.pod_bash_enricher
:trigger-params: {"alert_name": "ExampleLowDiskAlert"}
Manually-triggered action¶
Mark an action as a "manually triggered action" to prevent an "Example Config" from being shown:
.. robusta-action:: playbooks.robusta_playbooks.prometheus_simulation.prometheus_alert
:manual-trigger-only:
See Prometheus alert for an example.