Skip Navigation

InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)H
Posts
1
Comments
38
Joined
7 mo. ago

  • Sloup

    Jump
  • Except you're not really given the soup. It's just there for your taking, with a sign "contains piss".

    I'm just permanently surprised by the entitlement of people smh

    How much free stuff did you create in your life, piss or not?

  • Sloup

    Jump
  • Except you're not exactly homeless, are you?

  • So scary 🤣

  • For years I have been afraid of quicksand, alligators, and piranhas.

    I live in central Europe.

  • Yearly recurring protests and riots on may 1st.

    So much so that we now have riot-tourists that only come to experience "throwing a stone at a bank" or "getting arrested for lighting a garbage bin on fire"

  • I mean, if AI gets too expensive, companies can always hire juniors to replace them 🤣

  • Deleted

    Permanently Deleted

    Jump
  • It's been a very long time since I've thought of that tune. Is it an english nursery rhyme as well?

  • Deleted

    Permanently Deleted

    Jump
  • TIL

  • I'm not your buddy, pal!

  •    
        
    | ||  
    
    || |_  
    
      
  • This seems like a Good Thing™ (obviously with the caveat that it all depends on the implementation and their VPN partner).

  • I love grafana, but it's a resource hog, and my machine isn't powerful. Prometheus/node_exporter however is as lightweight as it can get.

    So I made a little Python script that fetches the data from Prometheus and uses mathplotlib to generate a graph.

    The dashboard calls that python script for every configured graph and embeds the image so it looks nice.

    You can find the script in one of my other repos (Prometheus-renderer probably), but there are dozen similar ones: search github for Prometheus renderer and you'll see

    If there are other things unclear, please don't hesitate to ask

  • Go for it 👍

  • Wow, I can really see this taking off in the international dashboading-scene!

  • Is it ... a new tool? I love new tools 🥹

  • Couldn't stop worrying about this, so I added:

    • --no-tooltips param: Don't include check output for hover tooltips
    • --no-timestamp param: Omit the "Generated at" timestamp to hide system clock and monitoring cadence.

    If you're using these, I feel much better about making the html publicly accessible, but when you set up a config please remember that links-tags can expose your internal topology and the tile/slot name might do the same! Don't go naming your tiles something like "Database Primary", "Payment Service Worker", or "Internal Auth API"!

    (unless you wanna place a honeypot)

  • Well, Ilias can certainly fill this niche. With a caveat:

    Currently all output from checks are accessible as tooltips (so they're in the HTML source), but for usecases such as yours it might be helpful to have the ability to suppress that kind of information leakage.

    I think I'll implement that in the coming days ...

  • Loved that idea so much that I went and implemented it:

    • The checks now have an automatic type inferrence and shorthand
    • introduced default rules that are used when nothing's configured
    • realized that yaml-anchors always worked thanks to the lib I'm using.

    So now with this preamble:

       
        
    # Defaults are used when nothing is defined at the slot level. They can be overridden by defining rules directly on a slot.  
    defaults:  
      rules:  
        - match:  
            code: 0  
          status: { id: ok, label: "✅" }  
        - match: {}  
          status: { id: error, label: "❌" }  
    
    # YAML anchors: reusable fragments ilias doesn't interpret directly... 
    # it's all just yaml  
    _anchors:  
      pct_rules: &pct_rules           # works for disk, memory, CPU …  
        - match:  
            output: "^[0-6]\\d%$|^[0-9]%$"  
          status: { id: ok, label: "✅ <70%" }  
        - match:  
            output: "^[7-8]\\d%$"  
          status: { id: warn, label: "⚠️ 70–89%" }  
        - match: {}  
          status: { id: critical, label: "🔴 ≥90%" }  
      
      

    I can now have a tile like this:

       
        
          - name: Memory  
            slots: # combine anchors and default rules as well as check shorthands  
              - name: usage  
                check: "free | awk '/^Mem:/ {printf \"%.0f%\", $3/$2 * 100}'"  
                rules: *pct_rules  
              - name: available  
                check: "free -h | awk '/^Mem:/ {print $7 \" free\"}'"  
                # uses default rules  
              - name: total  
                check: "free -h | awk '/^Mem:/ {print $2 \" total\"}'"  
                # uses default rules  
      
      

    And the best? It's fully backwards compatible ❤️

    Thanks again for the suggestion!

  • Yes, I'm aware of that, but I always found it weird to have a live service for something that hardly ever changes. And then I had the idea of this whole "fully self contained html", and now I can't imagine it another way 😆

    That's just opinions though, and if Homepage strikes your fancy go for it - it's an awesome project.

  • Selfhosted @lemmy.world

    Presenting ilias, yet another dashboard because obviously the world needed one more