cross-posted from: https://lemmy.ml/post/4560181

A follow up on [DISCUSS] Website to monitor Lemmy servers’ performance/availability


I wanted to experiment w/ Lemmy’s APIs to, eventually, build a public-facing performance monitoring solution for Lemmy.

It started w/ a couple of shell commands which I found myself repeating. Then I recalled the saying “Don’t repeat yourself - make Make make things happen for you!” and, well, stopped typing commands in bash.

Instead I, incrementally, wrote a makefile to do the crud work for me (esp thanks to its declarative style): https://github.com/bahmanm/lemmy-clerk/blob/v0.0.1/run-clerk


TBH there’s nothing special about the file. But I thought I’d share this primarily b/c it is a demonstration of the patterns I usually use in my makefiles and I’d love some feedback on those.

Additionally, it’s a real world use-case for bmakelib (a library that I maintain 😎 )

  • andrew@lemmy.stuart.fun
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    This is the kind of thing I’d probably just monitor with prometheus’ blackbox exporter if I wanted the list, and to be able to see trends and/or alerts for http response time, http response code, cert expiration, all that.

    • bahmanm@lemmy.mlOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      Now that I know which endpoints I’m interested in and which arguments I need to pass, exporting them to Prometheus is my next step. Though I wasn’t sure where to begin w/ - I was thinking about writing the HTTP requests in Java or Python and export the results from there.

      Blackbox exporter is definitely easier and cleaner. Thanks for the tip 💯