But am I blind, or is there no documentation of what osquery modules/tables are available?
https://osquery.readthedocs.io/en/stable/
EDIT: rewritten the comment so it's less of a rant
But am I blind, or is there no documentation of what osquery modules/tables are available?
https://osquery.readthedocs.io/en/stable/
EDIT: rewritten the comment so it's less of a rant
Ok, I have to admit I am "allergic" to this take. Why do you mind (or even care about) the JVM? Do you care about the innards of Python's VM, or any other language's runtime?
Leaving aside which language you use on top, the JVM is likely the single most-developed and most-improved VM ever created. Uncounted bazillions of man-hours of development went into it. Corner cases were found, performance was tweaked, just-in-time optimization was implemented, novel garbate collectors were developed. It is an impressive piece of machinery, which is why I find it slightly annoying when it gets a dismissive treatment "just because".
Of course I might be wrong and you might just be that person that spent the last three weeks chasing an obscure JVM issue that happens in 0.01% percent of production servers, in which case you do have legitimate reasons for being "allergic" to the JVM.
But that was 20-30 years ago, literally. A few things happened: SSDs, and Java startup time.
A warm-start Java "Hello World" is 200-300ms. A babashka (bb) "Hello World" is 30-40ms, which is faster than Python3 "Hello World" (40-50ms).
But I would say that e.g. IntelliJ looks quite good and that is a basic theme available without much tweaking, plus it can be very snappy (when jetbrains doesn’t ship it with a decade old JVM with shitty default settings. It is fixed in recent versions).
I am well aware it is a very productive ecosystem, though I feel I am entitled to like or dislike any technologies I wish to, however irrational it might be. It was a figure of speech mostly intended as tongue-in-cheeck, not a statement of fact that I need to defend.
The first time I tried Clojure, I tried with Leiningen, but it dumped literally hundreds of lines of Java stack traces when something went wrong. So I stopped.
As a comparative example, how do I install F#? Well, you install the .NET SDK, and then you get F# automatically. When something goes wrong, I get good error messages that are tailored to F#.
I think it's a little misleading to ask "why do you care about the JVM?" because the answer is that "Clojure makes you care about the JVM".
Of course, maybe it's me. But I have no trouble using F#, Racket, Elixir, Erlang, or several other languages. Yet, I have struggled every time to get going with Clojure.
It's really the experience in totality. There are choices, but for someone new to the Java ecosystem, it's confusing why and why should I care. Because in the end, I don't care. I just want to use Clojure, but there's decisions to be made at every step of getting going that aren't clear to someone new to the ecosystem.
This same thing happened with .NET as well. At one point in time, there was .NET Framework, .NET Core, and Mono and a question of how to get F# in all that. That was just as, if not more so, confusing. However, it's since been cleared up: install .NET 6 or higher.
I know it’s mostly about a sentiment, but if you or anyone is curious — there is basically none, OracleJDK is a fork of OpenJDK (which is the reference implementation) with basically negligible changes. License wise OpenJDK uses the same one as Linux so you can use it as you seem fit, while the current LTS OracleJDK (17) is free to use until the next LTS release + 1 year, but unless you need corporate support, you really have no need for that.
Pretty much whatever you do, you will get OpenJDK (all these options are forks with minuscule changes for the most part). If you do happen to need multiple JDKs I can recommend sdkman. But I think the java platform is pretty suckless, especially that it has probably the very best backwards compatibility.