From d36907de6d14cd3f27d617674dd45bb72ceabb84 Mon Sep 17 00:00:00 2001
From: Semyon Krestyaninov <ensiouel@gmail.com>
Date: Tue, 20 Feb 2024 20:13:51 +0300
Subject: [PATCH] refactor Channels

---
 zap/channels.go | 2 +-
 zap/field.go    | 6 +++++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/zap/channels.go b/zap/channels.go
index 92b3d823..097c7746 100644
--- a/zap/channels.go
+++ b/zap/channels.go
@@ -16,7 +16,7 @@ const (
 func ContainsChannels(channels ...string) FilterFunc {
 	return func(entry zapcore.Entry, fields []zapcore.Field) bool {
 		for _, f := range fields {
-			if f.Key == channelKey && f.Type == zapcore.ArrayMarshalerType {
+			if f.Key == channelKey && f.Type == zapcore.SkipType {
 				for _, v := range f.Interface.(stringArray) {
 					if data.Contains(v, channels) {
 						return true
diff --git a/zap/field.go b/zap/field.go
index 60a56235..df679dc2 100644
--- a/zap/field.go
+++ b/zap/field.go
@@ -20,7 +20,11 @@ func (ss stringArray) MarshalLogArray(arr zapcore.ArrayEncoder) error {
 }
 
 func Channels(channels ...string) zap.Field {
-	return zap.Array(channelKey, stringArray(channels))
+	return zap.Field{
+		Key:       channelKey,
+		Type:      zapcore.SkipType, // используем тип zapcore.SkipType, чтобы поле игнорировалось при выводе записи
+		Interface: stringArray(channels),
+	}
 }
 
 func Category(category string) zap.Field {
-- 
GitLab