git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [RFC PATCH v1] telemetry design overview (part 1)

From
Jeff King <peff@peff.net>
Date
Jun 11, 2018, 06:08 UTC
Message-ID
<20180611060832.GB28598@sigill.intra.peff.net>
In-Reply-To
<410f0fee-010c-c178-224c-e47ae0b0dda6@kdbg.org>
On Sun, Jun 10, 2018 at 12:44:25AM +0200, Johannes Sixt wrote:
Show 7 quoted lines
> > I agree with Peff: this is something you as a user need to be aware of,
> > and need to make sure you configure your Git just like you want. As long
> > as this is a purely opt-in feature, it is useful and helpful.
> 
> The problem with this feature is not so much that it enables someone to do
> bad things, but that it is specifically targeted at recording *how users use
> Git*.

I think one issue here is that we are not looking at concrete patches. So for instance, I've seen a claim that Git should never have a way to turn on tracing all the time. But at GitHub we have found it useful to have a config option to log the sha1 of every object that is dropped by git-prune or by "repack -ad". It's helped both as a developer (tracking down races or bugs in our code) and as an administrator (figuring out where a corruption was introduced). It needs to be on all the time to be useful, since the point is to have an audit trail to look at _after_ a bad thing happens.

That's something we do completely on the server side; I don't think there are any privacy or "spying" issues there. And I don't think it's a huge maintenance burden. Inside the existing code, it's literally a one-line "log this" (the log code itself is a hundred or so lines in its own file).

Now most users probably don't care that much about this use case. And I'm OK to apply it as a custom patch. But doesn't it seem like that's something other people hosting Git repos might want? Or that the concept might extend to other loggable items that _are_ interesting on the client side?

That's why I think it is worth taking this step-by-step. Let's log more things. Let's make enabling tracing more flexible. Those are hopefully uncontentious and universally useful. If you want to draw the line on "spying", then I think the right place to draw it is when somebody wants to ship code to actually move those logs out of the user's control.

-Peff
Previous: Johannes SixtNext: brian m. carlson
Message 22 of 27 in “telemetry design overview (part 1)”
  1. telemetry design overview (part 1)git@jeffhostetler.com, Jun 7, 2018
  2. telemetry: design documenationgit@jeffhostetler.com, Jun 7, 2018
  3. Ævar Arnfjörð BjarmasonJun 8, 2018
  4. Johannes SixtJun 7, 2018
  5. Jeff KingJun 8, 2018
  6. Thomas BraunJun 8, 2018
  7. Johannes SixtJun 8, 2018
  8. Ævar Arnfjörð BjarmasonJun 8, 2018
  9. Duy NguyenJun 9, 2018
  10. Ævar Arnfjörð BjarmasonJun 9, 2018
  11. Jeff KingJun 9, 2018
  12. Johannes SchindelinJun 9, 2018
  13. Jeff KingJun 11, 2018
  14. Duy NguyenJun 9, 2018
  15. Jeff KingJun 9, 2018
  16. Johannes SixtJun 9, 2018
  17. Jeff KingJun 9, 2018
  18. Junio C HamanoJun 12, 2018
  19. Johannes SixtJun 9, 2018
  20. Johannes SchindelinJun 9, 2018
  21. Johannes SixtJun 9, 2018
  22. Jeff KingJun 11, 2018
  23. brian m. carlsonJun 10, 2018
  24. Jeff KingJun 11, 2018
  25. Jeff KingJun 11, 2018
  26. Ævar Arnfjörð BjarmasonJun 8, 2018
  27. Duy NguyenJun 8, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.