grpclog.go raw

   1  /*
   2   *
   3   * Copyright 2017 gRPC authors.
   4   *
   5   * Licensed under the Apache License, Version 2.0 (the "License");
   6   * you may not use this file except in compliance with the License.
   7   * You may obtain a copy of the License at
   8   *
   9   *     http://www.apache.org/licenses/LICENSE-2.0
  10   *
  11   * Unless required by applicable law or agreed to in writing, software
  12   * distributed under the License is distributed on an "AS IS" BASIS,
  13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14   * See the License for the specific language governing permissions and
  15   * limitations under the License.
  16   *
  17   */
  18  
  19  // Package grpclog defines logging for grpc.
  20  //
  21  // In the default logger, severity level can be set by environment variable
  22  // GRPC_GO_LOG_SEVERITY_LEVEL, verbosity level can be set by
  23  // GRPC_GO_LOG_VERBOSITY_LEVEL.
  24  package grpclog
  25  
  26  import (
  27  	"os"
  28  
  29  	"google.golang.org/grpc/grpclog/internal"
  30  )
  31  
  32  func init() {
  33  	SetLoggerV2(newLoggerV2())
  34  }
  35  
  36  // V reports whether verbosity level l is at least the requested verbose level.
  37  func V(l int) bool {
  38  	return internal.LoggerV2Impl.V(l)
  39  }
  40  
  41  // Info logs to the INFO log.
  42  func Info(args ...any) {
  43  	internal.LoggerV2Impl.Info(args...)
  44  }
  45  
  46  // Infof logs to the INFO log. Arguments are handled in the manner of fmt.Printf.
  47  func Infof(format string, args ...any) {
  48  	internal.LoggerV2Impl.Infof(format, args...)
  49  }
  50  
  51  // Infoln logs to the INFO log. Arguments are handled in the manner of fmt.Println.
  52  func Infoln(args ...any) {
  53  	internal.LoggerV2Impl.Infoln(args...)
  54  }
  55  
  56  // Warning logs to the WARNING log.
  57  func Warning(args ...any) {
  58  	internal.LoggerV2Impl.Warning(args...)
  59  }
  60  
  61  // Warningf logs to the WARNING log. Arguments are handled in the manner of fmt.Printf.
  62  func Warningf(format string, args ...any) {
  63  	internal.LoggerV2Impl.Warningf(format, args...)
  64  }
  65  
  66  // Warningln logs to the WARNING log. Arguments are handled in the manner of fmt.Println.
  67  func Warningln(args ...any) {
  68  	internal.LoggerV2Impl.Warningln(args...)
  69  }
  70  
  71  // Error logs to the ERROR log.
  72  func Error(args ...any) {
  73  	internal.LoggerV2Impl.Error(args...)
  74  }
  75  
  76  // Errorf logs to the ERROR log. Arguments are handled in the manner of fmt.Printf.
  77  func Errorf(format string, args ...any) {
  78  	internal.LoggerV2Impl.Errorf(format, args...)
  79  }
  80  
  81  // Errorln logs to the ERROR log. Arguments are handled in the manner of fmt.Println.
  82  func Errorln(args ...any) {
  83  	internal.LoggerV2Impl.Errorln(args...)
  84  }
  85  
  86  // Fatal logs to the FATAL log. Arguments are handled in the manner of fmt.Print.
  87  // It calls os.Exit() with exit code 1.
  88  func Fatal(args ...any) {
  89  	internal.LoggerV2Impl.Fatal(args...)
  90  	// Make sure fatal logs will exit.
  91  	os.Exit(1)
  92  }
  93  
  94  // Fatalf logs to the FATAL log. Arguments are handled in the manner of fmt.Printf.
  95  // It calls os.Exit() with exit code 1.
  96  func Fatalf(format string, args ...any) {
  97  	internal.LoggerV2Impl.Fatalf(format, args...)
  98  	// Make sure fatal logs will exit.
  99  	os.Exit(1)
 100  }
 101  
 102  // Fatalln logs to the FATAL log. Arguments are handled in the manner of fmt.Println.
 103  // It calls os.Exit() with exit code 1.
 104  func Fatalln(args ...any) {
 105  	internal.LoggerV2Impl.Fatalln(args...)
 106  	// Make sure fatal logs will exit.
 107  	os.Exit(1)
 108  }
 109  
 110  // Print prints to the logger. Arguments are handled in the manner of fmt.Print.
 111  //
 112  // Deprecated: use Info.
 113  func Print(args ...any) {
 114  	internal.LoggerV2Impl.Info(args...)
 115  }
 116  
 117  // Printf prints to the logger. Arguments are handled in the manner of fmt.Printf.
 118  //
 119  // Deprecated: use Infof.
 120  func Printf(format string, args ...any) {
 121  	internal.LoggerV2Impl.Infof(format, args...)
 122  }
 123  
 124  // Println prints to the logger. Arguments are handled in the manner of fmt.Println.
 125  //
 126  // Deprecated: use Infoln.
 127  func Println(args ...any) {
 128  	internal.LoggerV2Impl.Infoln(args...)
 129  }
 130  
 131  // InfoDepth logs to the INFO log at the specified depth.
 132  //
 133  // # Experimental
 134  //
 135  // Notice: This API is EXPERIMENTAL and may be changed or removed in a
 136  // later release.
 137  func InfoDepth(depth int, args ...any) {
 138  	if internal.DepthLoggerV2Impl != nil {
 139  		internal.DepthLoggerV2Impl.InfoDepth(depth, args...)
 140  	} else {
 141  		internal.LoggerV2Impl.Infoln(args...)
 142  	}
 143  }
 144  
 145  // WarningDepth logs to the WARNING log at the specified depth.
 146  //
 147  // # Experimental
 148  //
 149  // Notice: This API is EXPERIMENTAL and may be changed or removed in a
 150  // later release.
 151  func WarningDepth(depth int, args ...any) {
 152  	if internal.DepthLoggerV2Impl != nil {
 153  		internal.DepthLoggerV2Impl.WarningDepth(depth, args...)
 154  	} else {
 155  		internal.LoggerV2Impl.Warningln(args...)
 156  	}
 157  }
 158  
 159  // ErrorDepth logs to the ERROR log at the specified depth.
 160  //
 161  // # Experimental
 162  //
 163  // Notice: This API is EXPERIMENTAL and may be changed or removed in a
 164  // later release.
 165  func ErrorDepth(depth int, args ...any) {
 166  	if internal.DepthLoggerV2Impl != nil {
 167  		internal.DepthLoggerV2Impl.ErrorDepth(depth, args...)
 168  	} else {
 169  		internal.LoggerV2Impl.Errorln(args...)
 170  	}
 171  }
 172  
 173  // FatalDepth logs to the FATAL log at the specified depth.
 174  //
 175  // # Experimental
 176  //
 177  // Notice: This API is EXPERIMENTAL and may be changed or removed in a
 178  // later release.
 179  func FatalDepth(depth int, args ...any) {
 180  	if internal.DepthLoggerV2Impl != nil {
 181  		internal.DepthLoggerV2Impl.FatalDepth(depth, args...)
 182  	} else {
 183  		internal.LoggerV2Impl.Fatalln(args...)
 184  	}
 185  	os.Exit(1)
 186  }
 187