Class: StatsCloud::Client
- Inherits:
-
Object
- Object
- StatsCloud::Client
- Includes:
- Singleton, AssetsHelper, LoggerHelper, PluginsHelper, StatsCloudHelper
- Defined in:
- lib/statscloud/statscloud_client.rb
Overview
Module which implements StatsCloud framework support.
Instance Method Summary collapse
-
#cluster_status ⇒ Hash
Returns cluster status.
-
#meter ⇒ StatsCloud::StatsmeterClient
Returns statscloud.io client aka Statsmeter client.
-
#record_event(name, measurement = 0) ⇒ Object
Records a single event.
-
#record_events(*events) ⇒ Object
Records several events at once.
-
#record_events_array(events) ⇒ Object
Records an array of events at once.
-
#start(base_config = nil) ⇒ Thread
Configures statsmeter.io support for application and initializes a statscloud.io client.
-
#stop ⇒ NilClass
Stops statscloud.io service.
-
#with_environment(env) ⇒ Object
Configures Statscloud environment.
-
#with_tags(tags) ⇒ Object
Configures Statscloud tags.
Methods included from PluginsHelper
#build_plugins, #start_plugins_job
Methods included from LoggerHelper
Instance Method Details
#cluster_status ⇒ Hash
Returns cluster status.
108 109 110 111 112 113 114 |
# File 'lib/statscloud/statscloud_client.rb', line 108 def cluster_status return unless @cluster_client cluster = @cluster_client.get_cluster(@token, @app)&.body check_cluster_status(cluster) cluster[:status][:status] if cluster end |
#meter ⇒ StatsCloud::StatsmeterClient
Returns statscloud.io client aka Statsmeter client
67 68 69 |
# File 'lib/statscloud/statscloud_client.rb', line 67 def meter @statsmeter_client end |
#record_event(name, measurement = 0) ⇒ Object
Records a single event.
Calls statsmeter client record_event method.
79 80 81 |
# File 'lib/statscloud/statscloud_client.rb', line 79 def record_event(name, measurement = 0) @statsmeter_client&.record_event(name, measurement) end |
#record_events(*events) ⇒ Object
Records several events at once.
Calls statsmeter record_events method.
89 90 91 |
# File 'lib/statscloud/statscloud_client.rb', line 89 def record_events(*events) @statsmeter_client&.record_events(*events) end |
#record_events_array(events) ⇒ Object
Records an array of events at once.
Calls statsmeter client record_events_array method.
99 100 101 |
# File 'lib/statscloud/statscloud_client.rb', line 99 def record_events_array(events) @statsmeter_client&.record_events_array(events) end |
#start(base_config = nil) ⇒ Thread
Configures statsmeter.io support for application and initializes a statscloud.io client.
35 36 37 38 39 40 41 42 43 44 |
# File 'lib/statscloud/statscloud_client.rb', line 35 def start(base_config = nil) initialize_values generate_configuration(base_config) collect_statscloud_assets(@config, @source_mappings) config_values clear_data configure_statscloud_plugins configure_cluster connect_to_cluster end |
#stop ⇒ NilClass
Stops statscloud.io service.
121 122 123 124 125 126 |
# File 'lib/statscloud/statscloud_client.rb', line 121 def stop @statsmeter_client&.close @statsmeter_client = nil @cluster_client&.undeploy_cluster(@token, @app) @cluster_client = nil end |
#with_environment(env) ⇒ Object
Configures Statscloud environment.
49 50 51 52 |
# File 'lib/statscloud/statscloud_client.rb', line 49 def with_environment(env) config_environment(env) self end |
#with_tags(tags) ⇒ Object
Configures Statscloud tags.
57 58 59 60 |
# File 'lib/statscloud/statscloud_client.rb', line 57 def () () self end |