Linux - GeneralThis Linux forum is for general Linux questions and discussion.
If it is Linux Related and doesn't seem to fit in any other forum then this is the place.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Yes, for my experience, in terms of stability, solidity and sanity, when talking about free OSes, nothing beats BSD kernel and Minix kernel.
Thanks for the suggestion. I know little about BSD other than running some specialized distribution on a short lived file server I put together from spare parts.
To be honest, OpenBSD is the one that grabs my attention the most, and probably my first refuge if the seas of Linux ever get tainted enough to become unnavigable.
One stated reason for "binary log files" was that the format could thereby be standardized. How many (hundreds of ...) regular-expressions have we cooked up or "borrowed" over the years to "parse a log file?"
The solution here is JSON formatting, which is a popular convention for structured logs (and makes ElasticSearch integration a snap). This allows for arbitrarily complex encodings, while still being human-readable, and there is a diverse and open ecosystem of tools available for formatting / filtering / transforming / searching JSON (ranging from good old grep, head/tail to jq, json2json, ES, etc).
The solution here is JSON formatting, which is a popular convention for structured logs (and makes ElasticSearch integration a snap). This allows for arbitrarily complex encodings, while still being human-readable, and there is a diverse and open ecosystem of tools available for formatting / filtering / transforming / searching JSON (ranging from good old grep, head/tail to jq, json2json, ES, etc).
There is no good reason for binary logs.
Text logs are meant to be simple, and I really haven't seen many that were unreadable by either a human, or some sort of parsing mechanism. There are exceptions for unnecessary use of the carriage return escape sequence, emitting DOS style line terminators, or using stdout instead of stderr, or vice versa. I think those are oversights by the programmers, and their responsibility to fix.
As I've said, I'm mostly speculating as I haven't had to implement this for anything important, but I don't quite see any good reason for binary logs, or binary configuration files. To the best of my knowledge, this has primarily been used to obfuscate things, or make them unreachable. Much like the Torx screw.
I'm sure this does not apply here, since the code is all Open Source (c), and must be trustworthy.
I wasn't talking about binary code/executable code/executable files/shared libraries/etc, I'm talking about binary logs and I agree with ttk. Binary log files are not human readable, full stop.
Alright, I've gotten a few comments about the binary string, so I'm going to elaborate on this:
My point, albeit tongue-in-cheek, was that each character set, by necessity, assigns different values to its characters. Some can have different values for a given alphanumeric character, and some can have characters that are not even in alphabetical order.
I am fully aware that the message posted was in ASCII, which, if you are using Ubuntu or Fedora, or just about any modern distribution, is *not* the default character set installed on your system, ironically enough.
Say you have a file with the executable bit unset. You could interpret any byte within as a character, as an integer, as part of an integer, as a floating point value, as an opcode, as a pseudo-opcode meant to be run inside a virtual machine as part of a DRM scheme, etc. 0x30 might be '0'. It might be something else entirely.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.