https://en.wikipedia.org/wiki/MAI_Systems_Corp._v._Peak_Comp....
P.S. Please correct me if I got any of this wrong.
What it really stands/stood for is the notion that a "copy" sufficient for the operation of copyright law occurs when a program is loaded from disk to RAM, and therefore it's possible to infringe copyright merely by using software that you aren't personally licensed for.
MAI basically used this theory to make third-party maintenance of their systems illegal, so Congress responded by amending the Copyright Act, but in an extremely narrow way: there's a carve out specifically for maintenance and repair.
You’ve never dealt with a bad log setup. Things I’ve seen:
- inconsistent format depending on which part of the software was logging (think of some modules using logging lib and others using print())
- multiline logs without any indication they are multiline
- logs in some dumb binary format that requires the original software to reverse into legible text
There are more, but the point is that logs are not often designed to be parsed and searched. They are normally added by developers to be human readable means of reversing internal state to debug issues. Anything above that is (shockingly) bonus material that doesn’t make it into home-grown enterprise/govt software.
I'm not sure how this is relevant. I've seen miles of incompetence in my career, that someone can fudge something up royally doesn't change the fundamental purpose of the thing. The point of log files is to store and make retrievable data about server state and actions over time. That someone somewhere can screw that up doesn't change that.
In this particular case, I find it unlikely they rolled some custom bizarro log file format regardless because of the nature of the subject matter: Proxy server log files. It's unlikely they rolled their own proxy server (and they certainly don't imply any particular difficulties like that in court statements) so we're most likely talking about reading standard Apache logs or something similar.
That’s a point of log files. However, it’s not the point tons of developers have in mind when they add log statements. Developers are primarily concerned with state required to reproduce bugs, not long term standardized storage containing enough information for useful attribution or even all important state transitions. You would be surprised how many developers don’t even bother logging item deletions because it’s such a trivial code path.
You’re idea of “the fundamental purpose” is from an operators view. It rarely lines up with the developers’ views and you’re in for a bad time if you think people who don’t see your perspective are “fudging something up royally” with “miles of incompetence”.
They are using the "defense" that it may be difficult to do, but their aim (avoiding the more sinister possibilities) is to stop precedent for other unwieldy requests.