Re: [RFC PATCH v1] telemetry design overview (part 1)
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Jun 9, 2018, 07:31 UTC
- Message-ID
- <CACsJy8DrtAdwH0dOjptJ0JDQ_gOeiTVbRknui4gM5P85Y5JZow@mail.gmail.com>
- In-Reply-To
- <87bmck4gip.fsf@evledraar.gmail.com>
On Sat, Jun 9, 2018 at 8:32 AM Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote:
Show 6 quoted lines
> Let's say you're in a corporate environment with Linux, OSX and Windows > boxes, but all of whom have some shared mounts provisioned & ability to > ship an /etc/gitconfig (wherever that lives on Windows). > > It's much easier to just do that than figure out how to build a custom > Git on all three platforms.
Let's say I don't care about making it easier on corporate environment. You have resources to do that.
Show 25 quoted lines
> > Not making it a compile-time option could force [1] linux distro > > to carry this function to everybody even if they don't use it (and > > it's kinda dangerous to misuse if you don't anonymize the data > > properly). I also prefer this a compile time option. > > Setting GIT_TRACE to a filename that you published is also similarly > dangerous, so would setting up a trivial 4-line shell alias to wrap > "git" and log what it's doing. > > > [1] Of course many distros can choose to patch it out. But it's the > > same argument as bringing this option in in the first place: you guys > > already have that code in private and now want to put it in stock git > > to reduce maintenance cost, why add extra cost on linux distro > > maintenance? > > Because: > > 1) I really don't see the basis for this argument that they'd need to > patch it out, they're not patching out e.g. GIT_TRACE now, which has > all the same sort of concerns, it's just a format that's more of a > hassle to parse than this proposed format. > > 2) I think you and Johannes are just seeing the "telemetry" part of > this, but if you look past that all this *really* is is "GIT_TRACE > facility that doesn't suck to parse".
If it's simply an improvement over GIT_TRACE, then I have no problem with that. That is:
- there is no new, permanent way to turn this one like config keys
- there's no plugin support or whatever for keeping output. Keep it to either a file or a file descriptor like we do with GIT_TRACE.
Show 11 quoted lines
> There's a lot of use-cases for that which have nothing to do with
> what this facility is originally written for, for example, a novice
> git user could turn it on and have it log in ~ somewhere, and then
> run some contrib script which analyzes his git usage and spews out
> suggestions ("you use this command/option, but not this related
> useful command/option").
>
> Users asking for help on the #git IRC channel or on this mailing list
> could turn this on if they have a problem, and paste it into some
> tool they could show to others to see exactly what they're doing /
> where it went wrong.And they can use GIT_TRACE now. If GIT_TRACE does not give enough info (e.g. too few trace points), add them. This new proposal is more about automation. With GIT_TRACE, which is more human friendly, I could skim over the output and remove sensitive info before I send it out for help. Machine-friendly format (even json) tends to be a lot more complex and harder to read/filter this way.
-- Duy