All posts

Community: monitoring is meant to be shared

Why I wanted a public repository of collectors from the start, what it changes day to day, and why I think a probe should be shared like a Docker image rather than sold in a pack.

By Benjamin5 min read

A person writes a post on a laptop; a page flies off the screen towards the RSS feed sign.

The same check, written a thousand times

If you do monitoring, you know the scene. A UPS lands in the server room, or a new switch model, and it has to be monitored. So you search: an old script on a forum, a repository abandoned five years ago, a plugin whose effect on the device nobody is quite sure of. You adapt it, you deploy it, and it never moves again. The day its author leaves the team, nobody dares touch it.

Meanwhile, at the other end of the country, someone is writing exactly the same check, for the same UPS.

That waste is what convinced me that Community had to be designed with banshee from day one, as one of its foundations, and not grafted on afterwards.

What Docker taught us

I often think about what Docker changed. Before it, installing software was local know-how: every team had its recipes, its scripts, its traps. Then came a shared registry. You pull the image someone already built, you start from it to build your own, and a company can keep its own registry beside the public one. Installing software became ordinary.

We want the same for monitoring: a probe you pull, read and build upon, instead of rewriting it in your corner.

I refuse to make the probe a product

Part of the market made the opposite choice. Probes are sold in packs, reserved for a paid plan or a subscription, or each probe is billed. I understand the business model, but I don't like it. Monitoring one more device costs more, you wait for the vendor to support a new model, and you don't always know what the probe really does.

With banshee there is no licence per host and no licence per probe, by design. A probe should be a common good: free, readable, changeable. Its worth comes from the people who use and improve it, not from a price list.

Community, in practice

Community is the public repository of banshee's collectors, online at banshee-monitoring.app/community. Collectors are grouped into collections, each with its page and its author, and an account is all it takes to publish your own.

Search before you write

What I want to change first is the reflex. Faced with a new device, you should no longer open a text editor, but the Store. It lives in the master and queries Community directly: you browse the collections and pull a collector or a whole collection in one click. No site to visit, no archive to unpack, no dependency to install.

A Community collection in the master's Store
A collection open in the Store: its presentation, its collectors, and the state of each one on your side.

And what you pull, you can read. Collectors are written in Keen, banshee's language, which we wanted an administrator to read without training; the first article shows one. Before adopting a collector, you see what it queries and what it watches. A probe reads the device, it never changes it. Nothing updates on its own: every version is kept, compared and restored in one click.

Sharing must be as easy as pulling

If publishing means setting up a Git repository and writing a description file, nobody does it. So we brought publishing down to one gesture: right-click your collector, "Publish…", and it joins one of your collections.

The Publish window of a collector
Publishing a collector: the repository, the collection, and the box that keeps it private.

You can also start from someone else's collector and adapt it to your hardware. The link to the original is kept, and its author stays credited. That is the very principle of a community: we build on each other's work, and we say so.

A collection can stay private, for your team or a client, and go public the day you consider it ready.

What works rises on its own

I didn't want stars or reviews, which mostly tell you who bothered to click. Community ranks collections by the number of banshee installations that actually use them. Knowing that hundreds of sites run a collection says more than a rating.

The totals are public: how many active installations, how many hosts, pollers and probes. The community sees its own size, and we know where to put the effort.

Are you tracking my data?

It is the question I would ask in your place. These figures come from two daily sends, each governed by a checkbox in the master's settings. The first sends usage statistics (the version, the number of hosts, pollers and probes), the second the list of Community collectors you use. The data is anonymised, with no possible link to your infrastructure, and we wanted nothing hidden: the exact content is shown under each checkbox, as it leaves.

The two checkboxes of the sends to Community, in the master's settings
Settings › Security: each send has its checkbox, and its exact content unfolds below it.

If you would rather send nothing at all, install banshee in incognito mode. Both checkboxes start unticked, nothing leaves, and you keep access to the Store.

Your repository beside ours

Community is not meant to be the only repository. The protocol it serves is documented, and a company can host its own beside it, the way you keep a private Docker registry beside the public one. The Store queries them all together.

The master's list of repositories
The master's repositories: Community, built in, and the ones you add.

Where we stand, and how to take part

Community is online. Choosing a specific version of a collector will come later; for now, you pull the latest. As for collection itself, it will arrive with the poller, the project's next big step.

If you have written a check that serves you well, it will serve others too. That is the whole bet of Community.

  • Browse the collections on Community.
  • Create an account and publish your first collection.
  • For a question or feedback, write to us.

The screenshots in this article come from a development preview and are given for illustration only.

A question about this post?

Write to the team: it will reply to the email address you give.

  • 5 min read

    Hello World: meet banshee

    banshee is free, open source monitoring, designed to tell the truth on the day everything goes wrong. What it is, what sets it apart, and where the project stands: a central server well along, and the poller as the next step.

    Read the post
All posts