statibus | Minimalistic Status Page

2»

Comments

  • @yoursunny said:

    DYK Travis CI is no longer free?
    If you aren't paying $69/month, you'd better move to GitHub Actions or CircleCI.

    They have a free Plan, works for me.
    Migration from .org is still going on, so I expect it to use OOS credits by then.

    Travis free plan turns out to be 10000 credits one time. When you run out, it'll never be replenished.
    As for OOS credits, you'll have to haggle with support every time you need more credits. It's not recurring.

    Then I just ask.

    SQL injection everywhere!

    No, cli.php is only available to your locally, means only you have access to these commands.
    Additional, every SQL query runs through SQLite3::escapeString.

    What if my group name happen to contain a quotation sign?
    "idle" servers isn't too crazy, where "idle" needs quotation if the servers are only partially idle.

    I filter any untrusted user input before I hand it over to sql, the cli is not filtered since I consider it trusted.
    I do prefer prepared statements anytime no question, I was not aware of it and I will update it when I got time.

    Thanked by (3)Hxxx yoursunny atomi
  • Small Patch:

    • switched all current sql statements to prepared statements since rqlite added support for it, thanks to @yoursunny for letting me know.
    • Removed sqlite3 as needed extension
    Thanked by (2)Brueggus yoursunny
  • So.. I finally managed to get my own instance of statibus up and running - and I love it for its simplicity. Great work @Neoon !

    Two things I ran into:

    • adding an IPv6 address for the database host in config.php doesn't work for obvious reasons, but using the hostname works fine.
    • CentOS' ping doesn't support IPv6 addresses. One has to use ping6 instead. I felt lazy so I just changed the call in class/cron.php.

    dnscry.pt - Public DNSCrypt resolvers hosted by LowEnd providers • Need a free NAT LXC? -> https://microlxc.net/

  • @Brueggus said:
    So.. I finally managed to get my own instance of statibus up and running - and I love it for its simplicity. Great work @Neoon !

    Two things I ran into:

    • adding an IPv6 address for the database host in config.php doesn't work for obvious reasons, but using the hostname works fine.
    • CentOS' ping doesn't support IPv6 addresses. One has to use ping6 instead. I felt lazy so I just changed the call in class/cron.php.

    You can submit a pull request, so I can update the codebase to switch between ping and ping6 depending if IPv4 or IPv6.
    Right now I am just using v4 but I added basic support so v6 will work too.

  • I did some houskeeping on the great statibus.

    The biggest feature, is remotes, basically remote checks, as many as you want.
    You can configure how many checks will be done plus the threshold, how many positive results are needed to mark it as online.

    The remote tests will be done, with the same timeout and other parameters you configured.
    Other than that, for some reason I used dates in the details history, which is completely fucked beyond.

    This has been replaced with unix time stamp as it should be, means its BREAKING to any running instance if you update.
    You wanna reset the details before updating with UPDATE details set detailed = "W10="

    The details are different from the outages, you still keep those.
    If there is need, we can add an option to regenerate the details from the outages.

    As before statibus works fine with PHP 7.x or PHP 8, no changes here.
    The other stuff are mostly fixes (css and display bugs), besides a clean up function, if you want to use it.

    Which is one of the reasons, I ditched the dates format in favour for unix time stamps too.
    You can try it in the experimental branch: https://github.com/Ne00n/statibus/tree/experimental

    Or just watch it:
    https://statibus.x8e.net/

    I gonna merge it later, if it deemed to be stable enough.

    Thanked by (1)Brueggus
  • @yoursunny said:
    Travis free plan turns out to be 10000 credits one time. When you run out, it'll never be replenished.
    As for OOS credits, you'll have to haggle with support every time you need more credits. It's not recurring.

    Since I ran low:
    "I am pleased to notify you that 15K credits were added to your account allowing you to resume running OSS builds"

    Even the reply times, this was done in 20 minutes, out side business hours, I can't complain.
    I may setup my own build server once later but for now.

  • Patch Notes:

    • remotes have been added by request (optional)
      You can add as many remote probes as you want, which will confirm outages.
      By default the requests will be randomized in-between the probes and you can configure the parameters such as how many checks should be done and how many checks each service needs to be marked as online.

    • switched details to unix time stamp instead of dates
      You will need to reset your details (90 days overview) since the new version won't work with dates anymore

    • use ping6 when IPv6 address is given, Thanks to @Brueggus

    • fixed a bug that caused statibus to use the incorrect endpoint with rqlite, which made it incompatible with 6.x versions
    • the details have a default window of 24 hours, means if a outage was longer than 24 hours, this wasn't displayed anymore in the details despite the outage was still going on, this has now been fixed, by allowing even if the outage exceeds the window, to keep track of it.
    • the uptime percentages will be now colored depending on downtime
    • a few css changes, primary mobile view, less spacing, loading fonts separate and preloading
    • a few html changes, make stuff that wasn't clickable clickable
    • added rqlite systemd example file
    • moved Overall Uptime above Events
    • refactoring and cleanup

    If you have any suggestions lemme know.

    Thanked by (2)Ympker webcraft
  • @Neoon said:

    If you have any suggestions lemme know.

    Another interesting option for supporting remotes could be to lean on blackbox exporter endpoints. Pretty flexible and easy API call

  • @lanefu said:

    @Neoon said:

    If you have any suggestions lemme know.

    Another interesting option for supporting remotes could be to lean on blackbox exporter endpoints. Pretty flexible and easy API call

    Nah, I keep it Minimalistic.

    Thanked by (1)AlwaysSkint
  • I've setup Statibus like the minimalist and clean look of it, on Github you says this "rqlite has its limits at about 250 requests per second, due to the raft consensus. So you should setup some type of caching, 1s is enough to prevent rqlite from not responding to queries.".

    Just wondering are you talking about adding caching to rqlite server or caching the status page so it doesn't call PHP on each request.

  • @Razza said:
    I've setup Statibus like the minimalist and clean look of it, on Github you says this "rqlite has its limits at about 250 requests per second, due to the raft consensus. So you should setup some type of caching, 1s is enough to prevent rqlite from not responding to queries.".

    Just wondering are you talking about adding caching to rqlite server or caching the status page so it doesn't call PHP on each request.

    yea PHP caching.

  • atomiatomi OG
    edited July 2022

    @Neoon said: May you give me some feedback.

    Finally got myself some time to give this a spin and first I gotta say I just love it! After you have setup, it just works and its blazing fast.
    Setting it up in a new minimal Alpine VPS was quite easy eventho I've never try rqlite

    Couple new features I would like to see:

    • Individual service page could also include that neat bar graphics
    • Groups could have own page so you would see overalls easily from different groups and how they are performing
  • Can you make a css optimization personal challenge and optimize it like there is no tomorrow? Squeze it like watter from stone.

  • @legendary said:
    Can you make a css optimization personal challenge and optimize it like there is no tomorrow? Squeze it like watter from stone.

    https://github.com/Ne00n/statibus/blob/main/content/css/style.css

    Thanked by (1)legendary
Sign In or Register to comment.