git-ecosystem / git-ecosystem/trace2receiver

On Windows capture and log the username of named pipe client peer

Open
#18 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
61
Forks
25
PR merge metrics
No merged PRs in 30d

Description

On Windows the collector (usually) runs as a Control Panel Service process and therefore inherits whatever system identity (LOCAL SERVICE). Logging the username of the collector in the OTLP data stream is not very useful.

We should use the feature of named pipes to get the (Windows) SID of the client process upon receiving an incoming named pipe connection and map that to a username and log that.

This is PII-sensitive, so it should only be done if requested in the pii.yml.

On Linux/Mac Unix domain sockets have a similar feature and IIRC is already being used.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Trace the Windows named-pipe connection handling and the pii.yml configuration path first. Determine how to obtain the connecting process SID, map it to a username, and include it in the OTLP data only when the PII option is requested. Done means Windows clients are logged by username without changing behavior when the option is disabled.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
observability-sre, operating-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.