diff --git a/zap/channels.go b/zap/channels.go
index 92b3d823e3aef22c30736942c0aa8931c7e19b31..097c77468e82dcc79760b1a03d6ac3eb9a92a99e 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 60a56235144b064b881d0705bdfe90b8c539719b..df679dc2dc84bffa1cc0826f9d0cf624fc60d22d 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 {