fluentd log driver: default retry wait is passed in nanoseconds

Đang mở
#5,320 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 2 ngày

@ogulcanaydogan đang làm issue này rồi.

Từ ngày 2/11/2026.

  • #5321 của @ogulcanaydogan — đang mở

Đánh giá

Độ khó
1/5
Thời gian dự kiến
Dưới một giờ
Mức phù hợp với người mới
25/100
Loại issue
Lỗi
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
go
Lĩnh vực
cli

Hướng nghiên cứu

The bug is in pkg/logging/fluentd_logger.go, where defaultRetryWait is converted with int(defaultRetryWait) instead of milliseconds, and the existing tests in the same package assert that wrong value. Start by reading how retryWait feeds the fluent-logger Config and the fluentd-retry-wait handling that already uses Milliseconds(). Done means the default is passed in milliseconds and the tests check that value. Pull request #5321 is already open against this issue, so check it before starting.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

In pkg/logging/fluentd_logger.go the default is defaultRetryWait = 1000 * time.Millisecond and retryWait := int(defaultRetryWait), which is 1000000000. fluent-logger-golang reads Config.RetryWait as milliseconds, and the code already converts a user-set fluentd-retry-wait with temp.Milliseconds().

Without fluentd-retry-wait the logger therefore gets about 11 days of retry wait. Its backoff caps the wait at MaxRetryWait (60000 ms), so a reconnect waits a minute instead of the intended one second.

Using defaultRetryWait.Milliseconds() fixes it. The existing tests compared against int(defaultRetryWait), so they matched the bug. I have a patch that changes them to check the value in milliseconds.

Ngôn ngữ chính
Go
Star
10.5k
Fork
839
Merge trung bình
3 ngày 18 giờ
Pull request đã merge (30 ngày)
40

Chuẩn bị môi trường

  • Có Dockerfile hoặc tệp Docker Compose
  • Không có mẫu pull request
  • Không có hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của containerd/nerdctl

Tất cả issue của containerd/nerdctl

Issue tương tự

Thêm issue về Go

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.