pkg/logger/triple.go (30 lines of code) (raw):

/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package logger // TripleLogger does not add user-defined log fields, so there will be no pointer // reference issues after updates, ensuring that all references are under control. type TripleLogger struct { } func GetTripleLogger() *TripleLogger { return &TripleLogger{} } func (l *TripleLogger) Info(args ...any) { control.info(args...) } func (l *TripleLogger) Warn(args ...any) { control.warn(args...) } func (l *TripleLogger) Error(args ...any) { control.error(args...) } func (l *TripleLogger) Debug(args ...any) { control.debug(args...) } func (l *TripleLogger) Infof(fmt string, args ...any) { control.infof(fmt, args...) } func (l *TripleLogger) Warnf(fmt string, args ...any) { control.warnf(fmt, args...) } func (l *TripleLogger) Errorf(fmt string, args ...any) { control.errorf(fmt, args...) } func (l *TripleLogger) Debugf(fmt string, args ...any) { control.debugf(fmt, args...) }