Class: Gruf::Prometheus::Server::Collector
- Inherits:
-
Bigcommerce::Prometheus::Collectors::Base
- Object
- Bigcommerce::Prometheus::Collectors::Base
- Gruf::Prometheus::Server::Collector
- Defined in:
- lib/gruf/prometheus/server/collector.rb
Overview
Prometheus instrumentor for gRPC servers
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
- #failed_total(request:, result:) ⇒ Object
- #handled_latency_seconds(request:, result:) ⇒ Object
- #handled_total(request:, result:) ⇒ Object
- #started_total(request:) ⇒ Object
Instance Method Details
#failed_total(request:, result:) ⇒ Object
50 51 52 53 54 55 56 57 |
# File 'lib/gruf/prometheus/server/collector.rb', line 50 def failed_total(request:, result:) return unless failure?(result) push( grpc_server_failed_total: 1, custom_labels: custom_labels(request:) ) end |
#handled_latency_seconds(request:, result:) ⇒ Object
74 75 76 77 78 79 |
# File 'lib/gruf/prometheus/server/collector.rb', line 74 def handled_latency_seconds(request:, result:) push( grpc_server_handled_latency_seconds: result.elapsed.to_f, custom_labels: custom_labels(request:, result:) ) end |
#handled_total(request:, result:) ⇒ Object
63 64 65 66 67 68 |
# File 'lib/gruf/prometheus/server/collector.rb', line 63 def handled_total(request:, result:) push( grpc_server_handled_total: 1, custom_labels: custom_labels(request:, result:) ) end |
#started_total(request:) ⇒ Object
39 40 41 42 43 44 |
# File 'lib/gruf/prometheus/server/collector.rb', line 39 def started_total(request:) push( grpc_server_started_total: 1, custom_labels: custom_labels(request:) ) end |