elastic / elastic/apm-aws-lambda

Restructure files / packages to move towards a flatter structure

Open
#192 0 comments 0 reactions 0 assignees View on GitHub
aws-λ-extension tech-debt
Dominant language
Go
Stars
20
Forks
36
Avg merge
1d 4h
Merged PRs (30d)
3

Description

The Go part of the extension codebase is currently composed of a `main.go` file and of the following packages:

- `extension`
- `e2e-testing`
- `logsapi`

After a discussion with @stuartnelson3, I think that packages should be restructured to actually separate the core code of the extension from packages bringing additional capabilities. The proposed file structure would look like this:
```
.
├── cli
├── e2e-testing
│ ├── e2e_test.go
│ └── e2e_util.go
├── lambda-api (former logsapi package, which will also include logic related to the extension api)
│ ├── extension_client.go
│ ├── logs_client.go
│ └── logs_server.go
├── data_forwarder.go (former apm_server.go)
├── data_receiver.go (former route-handlers+http_server.go)
├── events.go (former process_events.go)
├── logger.go
└── main.go
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.