v4.0.0: A SenseOps reboot

Butler 4.0.0 has been relased on GitHub.

Task scheduling for Qlik Sense, key-value store, reload failure alerts to MS Teams and more

Butler was due for a major overhaul and it has finally arrived.

This release adds a bunch of new features:

  • A reload task scheduler. Think Cron for Qlik Sense tasks. Need to run a reload every 15 minutes between 8 am and 10 am on the 4th day of every 3rd month? No problem!
  • A key-value store. A what, you may say? It’s really simple, really. Sense apps can store key-value pairs in Butler 4.0, using its REST API. Think of it as a way to stash away something you might need later. …which opens up all sorts of possibilities - such as unlimited parameter passing between tasks in reload chains. Like QlikView’s task chaining, but better. Oh you can set ttl (time-to-live) for KV pairs too, to make them auto-delete when the ttl expires. Handy.
  • Sending notifications for task failures to MS Teams, in addition to Slack and email.
  • Swagger API docs included in Butler itself. Start Butler and you get a full Swagger interface through which you get both API docs and a way to test the Butler REST API on your own server. Very cool.
  • Uptime and memory usage monitoring of Butler itself. Might seem like a detail, but is very important if you’re responsible for the ongoing operation of tools and microservices like Butler.
  • A revised REST API for interacting with Butler.
  • … and more.

There are also some breaking changes, most notably around the REST API. Some changes in the main config file too. While breaking changes are unfortunate, they were considered necessary in order to make Butler’s REST API better align with common best practices for such APIs.

Please see the changelog for more information.