Class: Gruf::Prometheus::Client::Collector
- Inherits:
-
Bigcommerce::Prometheus::Collectors::Base
- Object
- Bigcommerce::Prometheus::Collectors::Base
- Gruf::Prometheus::Client::Collector
- Defined in:
- lib/gruf/prometheus/client/collector.rb
Overview
Prometheus instrumentor for gRPC clients
Constant Summary collapse
- RESPONSE_CODE_OK =
'OK'- FAILURE_CLASSES =
%w[ GRPC::Unknown GRPC::Internal GRPC::DataLoss GRPC::FailedPrecondition GRPC::Unavailable GRPC::DeadlineExceeded GRPC::Cancelled ].freeze
Instance Method Summary collapse
- #completed(request_context:, result:) ⇒ Object
- #completed_latency_seconds(request_context:, result:) ⇒ Object
- #failed_total(request_context:, result:) ⇒ Object
- #started_total(request_context:) ⇒ Object
Instance Method Details
#completed(request_context:, result:) ⇒ Object
63 64 65 66 67 68 |
# File 'lib/gruf/prometheus/client/collector.rb', line 63 def completed(request_context:, result:) push( grpc_client_completed: 1, custom_labels: custom_labels(request_context:, result:) ) end |
#completed_latency_seconds(request_context:, result:) ⇒ Object
74 75 76 77 78 79 |
# File 'lib/gruf/prometheus/client/collector.rb', line 74 def completed_latency_seconds(request_context:, result:) push( grpc_client_completed_latency_seconds: result.elapsed.to_f, custom_labels: custom_labels(request_context:, result:) ) end |
#failed_total(request_context:, result:) ⇒ Object
50 51 52 53 54 55 56 57 |
# File 'lib/gruf/prometheus/client/collector.rb', line 50 def failed_total(request_context:, result:) return unless failure?(result) push( grpc_client_failed_total: 1, custom_labels: custom_labels(request_context:) ) end |
#started_total(request_context:) ⇒ Object
39 40 41 42 43 44 |
# File 'lib/gruf/prometheus/client/collector.rb', line 39 def started_total(request_context:) push( grpc_client_started_total: 1, custom_labels: custom_labels(request_context:) ) end |