Skip to content

Add more control over statement tracing #162

@nvamelichev

Description

@nvamelichev

Setting TRACE logging level for tech.ydb.yoj.repository.ydb.YdbRepositoryTransaction tends to produce overwhelmingly large log outputs.

We'd like to have more selective statement tracing, by e.g.

  • Introducing a (YdbRepository- or YdbRepositoryTransaction-level) filter by (tx name, statement type and parameters, statement result/error),
  • Encoding filterable information into logger name, e.g.: tech.ydb.yoj.repository.ydb.YdbRepositoryTransaction.<tx name>.<statement type>.{success|error}. This will be fully backwards-compatible, because enabling ALL traces by setting TRACE level for the tech.ydb.yoj.repository.ydb.YdbRepositoryTransaction top-level logger is still possible with this approach,
  • Introducing a TxOptions- and TxManager-settable filter (just "trace/do not trace transactions created by this TxManager")
  • Something else?

If we add new APIs for this functionality, they must be annotated as @ExperimentalApi and reference this issue.

Metadata

Metadata

Assignees

Labels

featureNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions