package util

import (
	"context"

	"git.frostfs.info/TrueCloudLab/frostfs-node/internal/logs"
	"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/network"
	"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/util/logger"
	"go.uber.org/zap"
)

// LogServiceError writes error message of object service to provided logger.
func LogServiceError(ctx context.Context, l *logger.Logger, req string, node network.AddressGroup, err error) {
	l.Error(ctx, logs.UtilObjectServiceError,
		zap.String("node", network.StringifyGroup(node)),
		zap.String("request", req),
		zap.Error(err),
	)
}

// LogWorkerPoolError writes debug error message of object worker pool to provided logger.
func LogWorkerPoolError(ctx context.Context, l *logger.Logger, req string, err error) {
	l.Error(ctx, logs.UtilCouldNotPushTaskToWorkerPool,
		zap.String("request", req),
		zap.Error(err),
	)
}