Skip to content
Snippets Groups Projects
grafana.mdwn 1.97 KiB
Newer Older
  • Learn to ignore specific revisions
  • anarcat's avatar
    anarcat committed
    Grafana
    =======
    
    [Grafana](https://grafana.com/) is a graphing engine and dashboard management tool that
    processes data from multiple data sources. We use it to trend various
    metrics collected from servers by [[Prometheus]].
    
    <https://grafana.torproject.org/>
    
    Puppet implementation
    ---------------------
    
    Grafana was installed with Puppet using the upstream Debian
    package, following a debate regarding the merits of Debian packages
    versus Docker containers when neither are trusted, see [this
    comment](https://trac.torproject.org/projects/tor/ticket/29684#comment:3) for a summary.
    
    
    Some manual configuration was performed after the install. An admin
    password reset on first install, stored in `torr-passwords.git`, in
    `hosts-extra-info`. Everything else is configured in Puppet.
    
    Grafana dashboards, in particular, live in
    `modules/profile/files/grafana/dashboards`, which is a copy of
    
    anarcat's [grafana-dashboards repository][]. The `README.md` file
    
    there contains more instructions on how to add and update
    dashboards. In general, dashboards must not be modified directly
    through the web interface, at least not without being exported back
    into the repository.
    
    
    [grafana-dashboards repository]: https://gitlab.com/anarcat/grafana-dashboards
    
    Updating a Grafana dashboard
    ----------------------------
    
    As mentioned above, the Grafana dashboards are maintained by
    Puppet. So while new dashboard can be created and edited in the
    Grafana web interface, changes will be **lost** when Puppet ships a
    new version of the dashboard.
    
    You therefore need to make *sure* you update the Dashboard in git
    before leaving. New dashboards not in git should be fairly safe, but
    please do also commit them to git so we have a proper revisioned
    history of their deployment. It's also the right way to make sure they
    are usable across other instances of Grafana. Finally, they are also
    easier to share and collaborate on that way.
    
    See the [grafana-dashboards repository][] for instructions on how to
    export dashboards into git.