I just spent 2 hours trying to figure out why fail2ban didn’t increment the ban count.

--- a/fail2ban/etc/fail2ban/jail.local
+++ b/fail2ban/etc/fail2ban/jail.local
@@ -1,6 +1,6 @@
 [DEFAULT]

-bantime.incremet     = true
+bantime.increment    = true
 bantime.rndtime      =
 bantime.maxtime      =
 bantime.factor       = 1

After I found that I seriously considered becoming a goose farmer.

  • @nick@midwest.social
    link
    fedilink
    English
    531 month ago

    One time I was trying to figure out why the MySQL command wasn’t connecting.

    mysql -h127.0.0.1 -p6033

    Eventually ended up having four different people help me in a huddle. After two hours we figured it out… it turns out the argument is -P for port.

    I wasted several thousand dollars of company time with a casing issue 🥴

    • Lv_InSaNe_vL
      link
      fedilink
      English
      26 days ago

      My team once spent an entire afternoon trying to figure out why an API call was returning either incorrect data, or just no data at all.

      Basically we were in the middle of migrating the API call from one API to another and we didn’t update the URL in the variable, so it was still hitting the old API 🙃

    • Eager Eagle
      link
      fedilink
      English
      361 month ago

      because of garbage like that I always use the long option names in scripts, even when the short one would be obvious

      • Victor
        link
        fedilink
        English
        191 month ago

        Yeah, for scripts that should be the norm. It really helps with legibility and maintainability, not having to have the manual open for 5 programs while tweaking stuff. 👌

    • Victor
      link
      fedilink
      English
      13
      edit-2
      1 month ago

      Reminds me of when I was in University and catching up with some lab work over the summer to get a passing grade. Was doing some 3D programming assignment and I spent I think 5 weeks debugging my stuff.

      Turns out I needed to transpose two adjacent lines of code. No syntax errors, no runtime errors, just graphics pipeline not outputting what I expected. Was a nightmare. And not even satisfying to figure it out.

        • Victor
          link
          fedilink
          English
          130 days ago

          It would’ve been satisfying had I not wasted my entire summer 💀

    • @frankenswine@lemmy.world
      link
      fedilink
      English
      7
      edit-2
      1 month ago

      know the feel. even funkier with ssh/scp and the like with every other tool using a different case argument for the same

      that’s how we learn and grow, i guess 🤷

      • @poweruser@lemmy.sdf.org
        link
        fedilink
        English
        330 days ago

        I came to the comments to mention that exact experience. There must be historical reasons that SCP uses -P and SSH uses -p but I certainly didn’t expect it since they’re both from the same package (openssh)

    • @hperrin@lemmy.ca
      link
      fedilink
      English
      3
      edit-2
      29 days ago

      Only several thousand? There was a guy when I worked for Facebook who pushed a config change incrementing a timeout from 5 seconds to 30 seconds in the caching layer. Config changes roll out instantly. Brought down all of Facebook for about two hours. Probably cost them many millions. I mean, good for him.

  • @frankenswine@lemmy.world
    link
    fedilink
    English
    361 month ago

    happens to the best. if fail2ban were any more resiliently engineered it would have failed to start due to the error in the config file

    • Eager Eagle
      link
      fedilink
      English
      341 month ago

      This is such an underutilized and neglected behavior.

      The very least a config parser should do is to log a warning.

    • Pika
      link
      fedilink
      English
      3
      edit-2
      1 month ago

      the amount of software I’ve used that lacks this type of system is aggravating. How hard is it to keep an object of property names, and if the name isn’t in it then it errors.

      this can be continued into command line as well. if flag -z doesn’t exist, you shouldn’t allow me to run a command with it. It’s clear I am trying to do something (incorrectly) thinking -z is something it isn’t, just error it and tell me that.

  • Nis
    link
    fedilink
    English
    61 month ago

    Well… Do you really think you’d do any better at incrementing geese?

  • Lucy :3
    link
    fedilink
    English
    51 month ago

    Also spent an hour wondering why it didn’t evalute -z “{CMD_OUT_ERROR” as true, despite manually running the script and echoing “‘${CMD_OUT_ERROR}’” evaluating to ‘’… well it’s the missing $.

    At least it’s time spent in working hours and being paid for the mess that they use as deployment for IdentityIQ written in kornshell.