error_handler.go raw

   1  // Copyright The OpenTelemetry Authors
   2  // SPDX-License-Identifier: Apache-2.0
   3  
   4  package otel // import "go.opentelemetry.io/otel"
   5  
   6  // ErrorHandler handles irremediable events.
   7  type ErrorHandler interface {
   8  	// DO NOT CHANGE: any modification will not be backwards compatible and
   9  	// must never be done outside of a new major release.
  10  
  11  	// Handle handles any error deemed irremediable by an OpenTelemetry
  12  	// component.
  13  	Handle(error)
  14  	// DO NOT CHANGE: any modification will not be backwards compatible and
  15  	// must never be done outside of a new major release.
  16  }
  17  
  18  // ErrorHandlerFunc is a convenience adapter to allow the use of a function
  19  // as an ErrorHandler.
  20  type ErrorHandlerFunc func(error)
  21  
  22  var _ ErrorHandler = ErrorHandlerFunc(nil)
  23  
  24  // Handle handles the irremediable error by calling the ErrorHandlerFunc itself.
  25  func (f ErrorHandlerFunc) Handle(err error) {
  26  	f(err)
  27  }
  28