From 152c4b7ff89536f9cc865c2e1de6abc31a13b9c1 Mon Sep 17 00:00:00 2001 From: hc-github-team-consul-core Date: Wed, 12 Feb 2025 13:36:55 +0530 Subject: [PATCH] Backport of fix logging time arch and os into release/1.20.x (#22139) * backport of commit 4af4c1236d030222bb7275caaf4c7adc59d25920 * backport of commit 5484f3815d018a77d3e36ed19fd6971c7c4e03c5 --------- Co-authored-by: Dhia Ayachi --- logging/logfile_bsd.go | 2 +- logging/logfile_darwin.go | 19 +++++++++++++++++++ logging/logfile_linux.go | 2 +- 3 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 logging/logfile_darwin.go diff --git a/logging/logfile_bsd.go b/logging/logfile_bsd.go index 21e579424563..6f767214d0dd 100644 --- a/logging/logfile_bsd.go +++ b/logging/logfile_bsd.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: BUSL-1.1 -//go:build darwin || freebsd || netbsd || openbsd +//go:build freebsd || netbsd || openbsd package logging diff --git a/logging/logfile_darwin.go b/logging/logfile_darwin.go new file mode 100644 index 000000000000..fc4a185f13d8 --- /dev/null +++ b/logging/logfile_darwin.go @@ -0,0 +1,19 @@ +// Copyright (c) HashiCorp, Inc. +// SPDX-License-Identifier: BUSL-1.1 + +//go:build darwin + +package logging + +import ( + "os" + "syscall" + "time" +) + +func (l *LogFile) createTime(stat os.FileInfo) time.Time { + stat_t := stat.Sys().(*syscall.Stat_t) + createTime := stat_t.Ctimespec + // Sec and Nsec are int32 in 32-bit architectures. + return time.Unix(int64(createTime.Sec), int64(createTime.Nsec)) //nolint:unconvert +} diff --git a/logging/logfile_linux.go b/logging/logfile_linux.go index 1e8f19b1da72..d841539e0d78 100644 --- a/logging/logfile_linux.go +++ b/logging/logfile_linux.go @@ -1,7 +1,7 @@ // Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: BUSL-1.1 -//go:build dragonfly || linux +//go:build dragonfly || linux || darwin package logging