Slackbot¶
Machine learning engineers at Paystone have a helpful Slack friend. He lives in the "guild_machine_learning" channel. He informs the entire channel of some key events in on-going machine learning lifecycles.
The purpose of this Slackbot is to help engineers stay on top of long-running jobs such as training jobs and serving endpoint deployments. By alerting them of the success or failure of these key jobs, the Slackbot increases developer productivity and makes life a little easier.
Events¶
Currently these are the events that our Slackbot sends messages for. To see specifically what information is provided, see the documentation for this service.
- Completed training jobs.
- Completed attempts to deploy service revisions.
How It Works¶
We maintain a set of PubSub topics pertaining to important events in the machine learning lifecycle. When these events complete, whether successful or not, messages are published with all of the relevant information.
Push subscriptions to each of these topics are configured, with the target being endpoints in the Slackbot service. The Slackbot service is a Cloud Run application with one endpoint per topic-subscription pair. Each path in the Slackbot service is of the format /[topic]/[subscription]
.