| 
									
										
										
										
											2023-05-09 19:19:48 +02:00
										 |  |  | // Copyright The OpenTelemetry Authors | 
					
						
							| 
									
										
										
										
											2024-04-11 11:46:18 +02:00
										 |  |  | // SPDX-License-Identifier: Apache-2.0 | 
					
						
							| 
									
										
										
										
											2023-05-09 19:19:48 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | package otel // import "go.opentelemetry.io/otel" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // ErrorHandler handles irremediable events. | 
					
						
							|  |  |  | type ErrorHandler interface { | 
					
						
							|  |  |  | 	// DO NOT CHANGE: any modification will not be backwards compatible and | 
					
						
							|  |  |  | 	// must never be done outside of a new major release. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	// Handle handles any error deemed irremediable by an OpenTelemetry | 
					
						
							|  |  |  | 	// component. | 
					
						
							|  |  |  | 	Handle(error) | 
					
						
							|  |  |  | 	// DO NOT CHANGE: any modification will not be backwards compatible and | 
					
						
							|  |  |  | 	// must never be done outside of a new major release. | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // ErrorHandlerFunc is a convenience adapter to allow the use of a function | 
					
						
							|  |  |  | // as an ErrorHandler. | 
					
						
							|  |  |  | type ErrorHandlerFunc func(error) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | var _ ErrorHandler = ErrorHandlerFunc(nil) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Handle handles the irremediable error by calling the ErrorHandlerFunc itself. | 
					
						
							|  |  |  | func (f ErrorHandlerFunc) Handle(err error) { | 
					
						
							|  |  |  | 	f(err) | 
					
						
							|  |  |  | } |