hashicorp / hashicorp/terraform-plugin-log

Consider Integration/Supersedence with Upcoming Go Structured Logging Capabilities

Open
#108 5 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
23
Forks
11
Avg merge
2d 12h
Merged PRs (30d)
1

Description

terraform-plugin-log version
v0.7.0
Description

Go Day 2022 included a talk on Go's proposed approach to structured logging. The golang.org/x/exp/slog package (currently experimental) has leveled logging, supports context, and is being designed for flexibility as a common interface for other packages. Its intended goals are: easy to use, fast, interoperates with existing packages, links to the log package. It uses an intermixed slice of string keys to values for structured logging fields, but does also support "attrs" for speed/correctness (e.g. slog.String("key", "value")).

This could potentially mean moving away or off github.com/hashicorp/go-hclog as a dependency.

References

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

No source files or tests are named. Start by reviewing how the project currently uses github.com/hashicorp/go-hclog, then read the linked x/exp/slog and slog design references. Done would require a documented decision about integration or moving away from hclog, but the issue does not define an implementation scope.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
observability-sre
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.