|
Monitoring System 0.1.0
System resource monitoring with pluggable collectors and alerting
|
Stub gRPC transport for testing. More...
#include <grpc_transport.h>


Public Member Functions | |
| stub_grpc_transport ()=default | |
| void | set_simulate_success (bool success) |
| Set whether to simulate success or failure. | |
| void | set_response_handler (std::function< grpc_response(const grpc_request &)> handler) |
| Set custom response handler for testing. | |
| common::VoidResult | connect (const std::string &host, uint16_t port) override |
| Connect to a gRPC server. | |
| common::Result< grpc_response > | send (const grpc_request &request) override |
| Send a gRPC request. | |
| bool | is_connected () const override |
| Check if connected to the server. | |
| void | disconnect () override |
| Disconnect from the server. | |
| bool | is_available () const override |
| Check if transport is available. | |
| std::string | name () const override |
| Get transport name. | |
| grpc_statistics | get_statistics () const override |
| Get transport statistics. | |
| void | reset_statistics () override |
| Reset statistics. | |
| std::string | get_host () const |
| uint16_t | get_port () const |
Public Member Functions inherited from kcenon::monitoring::grpc_transport | |
| virtual | ~grpc_transport ()=default |
Private Attributes | |
| std::string | host_ |
| uint16_t | port_ {0} |
| bool | connected_ {false} |
| bool | simulate_success_ {true} |
| std::function< grpc_response(const grpc_request &)> | response_handler_ |
| std::atomic< std::size_t > | requests_sent_ {0} |
| std::atomic< std::size_t > | bytes_sent_ {0} |
| std::atomic< std::size_t > | send_failures_ {0} |
Stub gRPC transport for testing.
This implementation simulates gRPC calls without actual network operations. Useful for unit testing and when gRPC library is unavailable.
Definition at line 133 of file grpc_transport.h.
|
default |
|
inlineoverridevirtual |
Connect to a gRPC server.
| host | Server hostname or IP address |
| port | Server port number |
Implements kcenon::monitoring::grpc_transport.
Definition at line 161 of file grpc_transport.h.
References connected_, kcenon::monitoring::host, host_, kcenon::monitoring::network_error, port_, and simulate_success_.
|
inlineoverridevirtual |
Disconnect from the server.
Implements kcenon::monitoring::grpc_transport.
Definition at line 208 of file grpc_transport.h.
References connected_, host_, and port_.
|
inline |
|
inline |
|
inlineoverridevirtual |
Get transport statistics.
Implements kcenon::monitoring::grpc_transport.
Definition at line 222 of file grpc_transport.h.
References bytes_sent_, requests_sent_, and send_failures_.
|
inlineoverridevirtual |
Check if transport is available.
Implements kcenon::monitoring::grpc_transport.
Definition at line 214 of file grpc_transport.h.
|
inlineoverridevirtual |
Check if connected to the server.
Implements kcenon::monitoring::grpc_transport.
Definition at line 204 of file grpc_transport.h.
References connected_.
|
inlineoverridevirtual |
Get transport name.
Implements kcenon::monitoring::grpc_transport.
Definition at line 218 of file grpc_transport.h.
|
inlineoverridevirtual |
Reset statistics.
Implements kcenon::monitoring::grpc_transport.
Definition at line 230 of file grpc_transport.h.
References bytes_sent_, requests_sent_, and send_failures_.
|
inlineoverridevirtual |
Send a gRPC request.
| request | The gRPC request to send |
Implements kcenon::monitoring::grpc_transport.
Definition at line 175 of file grpc_transport.h.
References kcenon::monitoring::grpc_request::body, bytes_sent_, connected_, kcenon::monitoring::grpc_response::elapsed, kcenon::monitoring::network_error, requests_sent_, response_handler_, send_failures_, simulate_success_, kcenon::monitoring::grpc_response::status_code, and kcenon::monitoring::grpc_response::status_message.
|
inline |
Set custom response handler for testing.
Definition at line 157 of file grpc_transport.h.
References response_handler_.
|
inline |
Set whether to simulate success or failure.
Definition at line 150 of file grpc_transport.h.
References simulate_success_, and kcenon::monitoring::success.
|
mutableprivate |
Definition at line 141 of file grpc_transport.h.
Referenced by get_statistics(), reset_statistics(), and send().
|
private |
Definition at line 137 of file grpc_transport.h.
Referenced by connect(), disconnect(), is_connected(), and send().
|
private |
Definition at line 135 of file grpc_transport.h.
Referenced by connect(), disconnect(), and get_host().
|
private |
Definition at line 136 of file grpc_transport.h.
Referenced by connect(), disconnect(), and get_port().
|
mutableprivate |
Definition at line 140 of file grpc_transport.h.
Referenced by get_statistics(), reset_statistics(), and send().
|
private |
Definition at line 139 of file grpc_transport.h.
Referenced by send(), and set_response_handler().
|
mutableprivate |
Definition at line 142 of file grpc_transport.h.
Referenced by get_statistics(), reset_statistics(), and send().
|
private |
Definition at line 138 of file grpc_transport.h.
Referenced by connect(), send(), and set_simulate_success().