Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Steinhardt <psteinhardt@gitlab.com>2023-09-14 17:59:12 +0300
committerPatrick Steinhardt <psteinhardt@gitlab.com>2023-09-15 13:37:43 +0300
commit2a006c4ee8b47887ddc1274dab9f645caf679c41 (patch)
treef8ff40264468d2c643ffad109201f95e1a01fa6c /internal/cgroups
parent47bcacea13a24cc3712900de3b2039d8efbce7f9 (diff)
log: Wrap the logrus logger
Introduce a wrapper for the logrus logging infrastructure. This is a first step towards abstracting away the actual implementation of our logs behind a type that we can iterate on and will thus pave the way towards adoption of the `slog` package. Note that this is only one step of this transition. The interface does not yet roundtrip to itself, e.g. calling `log.Logger.WithError()` will result in a `logrus.Entry`, not in a `log.Logger`. This will be handled at a later point.
Diffstat (limited to 'internal/cgroups')
-rw-r--r--internal/cgroups/cgroups.go6
-rw-r--r--internal/cgroups/manager.go7
-rw-r--r--internal/cgroups/manager_linux.go10
-rw-r--r--internal/cgroups/mock_linux_test.go10
-rw-r--r--internal/cgroups/v1_linux.go8
-rw-r--r--internal/cgroups/v2_linux.go8
6 files changed, 25 insertions, 24 deletions
diff --git a/internal/cgroups/cgroups.go b/internal/cgroups/cgroups.go
index fe2015069..2d77c732f 100644
--- a/internal/cgroups/cgroups.go
+++ b/internal/cgroups/cgroups.go
@@ -4,8 +4,8 @@ import (
"os/exec"
"github.com/prometheus/client_golang/prometheus"
- "github.com/sirupsen/logrus"
"gitlab.com/gitlab-org/gitaly/v16/internal/gitaly/config/cgroups"
+ "gitlab.com/gitlab-org/gitaly/v16/internal/log"
)
type addCommandCfg struct {
@@ -78,7 +78,7 @@ type Manager interface {
}
// NewManager returns the appropriate Cgroups manager
-func NewManager(cfg cgroups.Config, logger logrus.FieldLogger, pid int) Manager {
+func NewManager(cfg cgroups.Config, logger log.Logger, pid int) Manager {
if cfg.Repositories.Count > 0 {
if manager := newCgroupManager(cfg, logger, pid); manager != nil {
return manager
@@ -89,6 +89,6 @@ func NewManager(cfg cgroups.Config, logger logrus.FieldLogger, pid int) Manager
}
// PruneOldCgroups prunes old cgroups for both the memory and cpu subsystems
-func PruneOldCgroups(cfg cgroups.Config, logger logrus.FieldLogger) {
+func PruneOldCgroups(cfg cgroups.Config, logger log.Logger) {
pruneOldCgroups(cfg, logger)
}
diff --git a/internal/cgroups/manager.go b/internal/cgroups/manager.go
index 5f6a685c0..64af69bf5 100644
--- a/internal/cgroups/manager.go
+++ b/internal/cgroups/manager.go
@@ -3,13 +3,14 @@
package cgroups
import (
- "github.com/sirupsen/logrus"
+ "gitlab.com/gitlab-org/gitaly/v16/internal/log"
+
"gitlab.com/gitlab-org/gitaly/v16/internal/gitaly/config/cgroups"
)
-func newCgroupManager(cgroups.Config, logrus.FieldLogger, int) Manager {
+func newCgroupManager(cgroups.Config, log.Logger, int) Manager {
return &NoopManager{}
}
// No-op. The actual pruning operations are implemented in Cgroup V1/V2 managers.
-func pruneOldCgroups(cgroups.Config, logrus.FieldLogger) {}
+func pruneOldCgroups(cgroups.Config, log.Logger) {}
diff --git a/internal/cgroups/manager_linux.go b/internal/cgroups/manager_linux.go
index 13e742db2..12dc01988 100644
--- a/internal/cgroups/manager_linux.go
+++ b/internal/cgroups/manager_linux.go
@@ -11,8 +11,8 @@ import (
cgrps "github.com/containerd/cgroups/v3"
"github.com/opencontainers/runtime-spec/specs-go"
"github.com/prometheus/client_golang/prometheus"
- "github.com/sirupsen/logrus"
cgroupscfg "gitlab.com/gitlab-org/gitaly/v16/internal/gitaly/config/cgroups"
+ "gitlab.com/gitlab-org/gitaly/v16/internal/log"
)
// cfs_period_us hardcoded to be 100ms.
@@ -38,11 +38,11 @@ type CGroupManager struct {
handler cgroupHandler
}
-func newCgroupManager(cfg cgroupscfg.Config, logger logrus.FieldLogger, pid int) *CGroupManager {
+func newCgroupManager(cfg cgroupscfg.Config, logger log.Logger, pid int) *CGroupManager {
return newCgroupManagerWithMode(cfg, logger, pid, cgrps.Mode())
}
-func newCgroupManagerWithMode(cfg cgroupscfg.Config, logger logrus.FieldLogger, pid int, mode cgrps.CGMode) *CGroupManager {
+func newCgroupManagerWithMode(cfg cgroupscfg.Config, logger log.Logger, pid int, mode cgrps.CGMode) *CGroupManager {
var handler cgroupHandler
switch mode {
case cgrps.Legacy, cgrps.Hybrid:
@@ -173,11 +173,11 @@ func (cgm *CGroupManager) configRepositoryResources() *specs.LinuxResources {
return &reposResources
}
-func pruneOldCgroups(cfg cgroupscfg.Config, logger logrus.FieldLogger) {
+func pruneOldCgroups(cfg cgroupscfg.Config, logger log.Logger) {
pruneOldCgroupsWithMode(cfg, logger, cgrps.Mode())
}
-func pruneOldCgroupsWithMode(cfg cgroupscfg.Config, logger logrus.FieldLogger, mode cgrps.CGMode) {
+func pruneOldCgroupsWithMode(cfg cgroupscfg.Config, logger log.Logger, mode cgrps.CGMode) {
if cfg.HierarchyRoot == "" {
return
}
diff --git a/internal/cgroups/mock_linux_test.go b/internal/cgroups/mock_linux_test.go
index 1bf57e4a2..2662f75d8 100644
--- a/internal/cgroups/mock_linux_test.go
+++ b/internal/cgroups/mock_linux_test.go
@@ -28,10 +28,10 @@ import (
cgrps "github.com/containerd/cgroups/v3"
"github.com/containerd/cgroups/v3/cgroup1"
- "github.com/sirupsen/logrus"
"github.com/stretchr/testify/require"
cgroupscfg "gitlab.com/gitlab-org/gitaly/v16/internal/gitaly/config/cgroups"
"gitlab.com/gitlab-org/gitaly/v16/internal/helper/perm"
+ "gitlab.com/gitlab-org/gitaly/v16/internal/log"
"gitlab.com/gitlab-org/gitaly/v16/internal/testhelper"
)
@@ -141,11 +141,11 @@ func (m *mockCgroup) setupMockCgroupFiles(
}
}
-func (m *mockCgroup) newCgroupManager(cfg cgroupscfg.Config, logger logrus.FieldLogger, pid int) *CGroupManager {
+func (m *mockCgroup) newCgroupManager(cfg cgroupscfg.Config, logger log.Logger, pid int) *CGroupManager {
return newCgroupManagerWithMode(cfg, logger, pid, cgrps.Legacy)
}
-func (m *mockCgroup) pruneOldCgroups(cfg cgroupscfg.Config, logger logrus.FieldLogger) {
+func (m *mockCgroup) pruneOldCgroups(cfg cgroupscfg.Config, logger log.Logger) {
pruneOldCgroupsWithMode(cfg, logger, cgrps.Legacy)
}
@@ -212,10 +212,10 @@ func (m *mockCgroupV2) setupMockCgroupFiles(
}
}
-func (m *mockCgroupV2) newCgroupManager(cfg cgroupscfg.Config, logger logrus.FieldLogger, pid int) *CGroupManager {
+func (m *mockCgroupV2) newCgroupManager(cfg cgroupscfg.Config, logger log.Logger, pid int) *CGroupManager {
return newCgroupManagerWithMode(cfg, logger, pid, cgrps.Unified)
}
-func (m *mockCgroupV2) pruneOldCgroups(cfg cgroupscfg.Config, logger logrus.FieldLogger) {
+func (m *mockCgroupV2) pruneOldCgroups(cfg cgroupscfg.Config, logger log.Logger) {
pruneOldCgroupsWithMode(cfg, logger, cgrps.Unified)
}
diff --git a/internal/cgroups/v1_linux.go b/internal/cgroups/v1_linux.go
index b533b5ad1..8de8d283f 100644
--- a/internal/cgroups/v1_linux.go
+++ b/internal/cgroups/v1_linux.go
@@ -11,21 +11,21 @@ import (
"github.com/containerd/cgroups/v3/cgroup1"
specs "github.com/opencontainers/runtime-spec/specs-go"
"github.com/prometheus/client_golang/prometheus"
- "github.com/sirupsen/logrus"
"gitlab.com/gitlab-org/gitaly/v16/internal/gitaly/config"
cgroupscfg "gitlab.com/gitlab-org/gitaly/v16/internal/gitaly/config/cgroups"
+ "gitlab.com/gitlab-org/gitaly/v16/internal/log"
)
type cgroupV1Handler struct {
cfg cgroupscfg.Config
- logger logrus.FieldLogger
+ logger log.Logger
hierarchy func() ([]cgroup1.Subsystem, error)
*cgroupsMetrics
pid int
}
-func newV1Handler(cfg cgroupscfg.Config, logger logrus.FieldLogger, pid int) *cgroupV1Handler {
+func newV1Handler(cfg cgroupscfg.Config, logger log.Logger, pid int) *cgroupV1Handler {
return &cgroupV1Handler{
cfg: cfg,
logger: logger,
@@ -219,7 +219,7 @@ func defaultSubsystems(root string) ([]cgroup1.Subsystem, error) {
return subsystems, nil
}
-func pruneOldCgroupsV1(cfg cgroupscfg.Config, logger logrus.FieldLogger) {
+func pruneOldCgroupsV1(cfg cgroupscfg.Config, logger log.Logger) {
if err := config.PruneOldGitalyProcessDirectories(
logger,
filepath.Join(cfg.Mountpoint, "memory",
diff --git a/internal/cgroups/v2_linux.go b/internal/cgroups/v2_linux.go
index 8990358d2..f8970dbf7 100644
--- a/internal/cgroups/v2_linux.go
+++ b/internal/cgroups/v2_linux.go
@@ -13,20 +13,20 @@ import (
"github.com/containerd/cgroups/v3/cgroup2"
"github.com/opencontainers/runtime-spec/specs-go"
"github.com/prometheus/client_golang/prometheus"
- "github.com/sirupsen/logrus"
"gitlab.com/gitlab-org/gitaly/v16/internal/gitaly/config"
cgroupscfg "gitlab.com/gitlab-org/gitaly/v16/internal/gitaly/config/cgroups"
+ "gitlab.com/gitlab-org/gitaly/v16/internal/log"
)
type cgroupV2Handler struct {
cfg cgroupscfg.Config
- logger logrus.FieldLogger
+ logger log.Logger
*cgroupsMetrics
pid int
}
-func newV2Handler(cfg cgroupscfg.Config, logger logrus.FieldLogger, pid int) *cgroupV2Handler {
+func newV2Handler(cfg cgroupscfg.Config, logger log.Logger, pid int) *cgroupV2Handler {
return &cgroupV2Handler{
cfg: cfg,
logger: logger,
@@ -190,7 +190,7 @@ func (cvh *cgroupV2Handler) stats() (Stats, error) {
return stats, nil
}
-func pruneOldCgroupsV2(cfg cgroupscfg.Config, logger logrus.FieldLogger) {
+func pruneOldCgroupsV2(cfg cgroupscfg.Config, logger log.Logger) {
if err := config.PruneOldGitalyProcessDirectories(
logger,
filepath.Join(cfg.Mountpoint, cfg.HierarchyRoot),