log4js-node / log4js-node/log4js-node
any MDC so we do not have to pass a logger around?
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- JavaScript
- Star
- 5.8k
- Fork
- 752
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Is there any request context? In java, it was ThreadLocal until async programming...then Twitter invented Context.scala and Promise.scala so MDC in logback could be swapped.
Best with example.
Filter has MDC.put("requestId", generateUniqueReqId());
in the plain old typescript code without passing loggers around all the place(bad smell if we have to pass our logger all around) ->
class SomeBizClass {
private _logger = createLogger();
public someMethod(request: FetchPhotosRequest): FetchPhotosResponse {
_logger.info("My log here"");
return ...
}
}
In this case, the output is msg="My log here" requestId="xxxsomeReqIdxxx"
Is this possible? This was an amazing thing about logback and log4j so in GCP, AWS, you simply filtered on requestId and developers never had to remember to
- pass a logger around
- type in requestId in every single log statement(nor pass requestId around).
It made things 1. extremely efficient and 2. error-prone. (no one every made any errors forgetting to pass a logger or requestID to log it).
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Issue không nêu tên điểm bắt đầu của tệp, bài kiểm thử hoặc phần triển khai nào. Hãy bắt đầu bằng cách xác định các đường dẫn tạo logger và xử lý request, sau đó xem xét cách biểu diễn ngữ cảnh request bất đồng bộ mà không truyền logger hoặc request IDs; được xem là hoàn tất khi có quyết định về tính khả thi được ghi lại và một ví dụ hoạt động nếu dự án hỗ trợ điều đó.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- javascript, typescript
- Lĩnh vực
- observability
- Loại issue
- Tính năng
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 25/100