service_skeleton 0.0.0.20.gb9a0460 → 0.0.0.25.gbf57918

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 651f874d0096f67e63ff46f957125c53b032861d34b6b43cfdfb2113eca7ad65
4
- data.tar.gz: 78c72f06cb3693d10d9c02338191eb0fef4a8171a97a138c01c42374133ecef6
3
+ metadata.gz: 89afe58f5f8ce484ee0250284bae409b7d3a4f8f279747d1ee17e575befaa7df
4
+ data.tar.gz: 2c6cc5ff9cf019be8e8c8258e5713c86090aa62dd2dddda7d10c22fece7a992d
5
5
  SHA512:
6
- metadata.gz: 59635704ca571789796e46449916154cbcc4194e39a6bf754c564490e7acd4a3217e32693090920b8c5195672f6d602426e85b80f52fec5bc9d6f4d3dd2c6f35
7
- data.tar.gz: b67dd4d48fe6c468f10b7e34deb54195eee9f55e460f8179714228f727e5ff941f1200347825e8108fdb17ccd97da0b00d53431adb887b7ac37ee941ad3bd55d
6
+ metadata.gz: 7ab638d056ee90b752eb55fe4494fc2c395295413c651ad4e5f7b1b322e611ac02b02caf1c2b782c0518afb120708409ea92ec00f8d8258ef6116b12277e6885
7
+ data.tar.gz: 73be99a6c35c5885e1e6edbac125ed0998f657421fa0b0a2dff019e468e47d14ae95d55ad6396cf81ddeb46867dea8e0f3b233bda13355d72c88333de90adb9d
data/README.md CHANGED
@@ -146,7 +146,7 @@ that way you can get coerced values (numbers and booleans, rather than strings
146
146
  everywhere), range and format checking (say "the number must be between one and
147
147
  ten", or "the string must match this regex"), default values, and error
148
148
  reporting. You also get direct access to the configuration value as a method
149
- call on the `@config` object.
149
+ call on the `config` object.
150
150
 
151
151
  To declare configuration variables, simply call one of the "config declaration
152
152
  methods" (as listed in the `ServiceSkeleton::ConfigVariables` module) in your
@@ -263,9 +263,9 @@ class method in your service's class definition, like this:
263
263
 
264
264
  def run
265
265
  loop do
266
- puts config.something_funny
267
- sleep 1
268
- end
266
+ puts config.something_funny
267
+ sleep 1
268
+ end
269
269
  end
270
270
  end
271
271
 
@@ -327,7 +327,7 @@ All are all-uppercase, and the `<SERVICENAME>_` portion is the all-uppercase
327
327
  override the default log level for messages with a specific progname, by
328
328
  specifying one or more "progname severities" separated by commas. A progname
329
329
  severity looks like this:
330
-
330
+
331
331
  <progname>=<severity>
332
332
 
333
333
  To make things even more fun, if `<progname>` looks like a regular expression
@@ -418,7 +418,7 @@ infinite loop.
418
418
 
419
419
  To register a metric, use one of the standard metric registration methods from
420
420
  [Prometheus::Client::Registry](https://www.rubydoc.info/gems/prometheus-client/0.8.0/Prometheus/Client/Registry)
421
- (`#counter`, `gauge`, `histogram`, `summary`, or `register`) on the `metrics`
421
+ (`#counter`, `#gauge`, `#histogram`, `#summary`, or `#register`) on the `metrics`
422
422
  object to create or register the metric.
423
423
 
424
424
  In our generic greeter service we've been using as an example so far, you might
@@ -451,7 +451,7 @@ on `metrics`. Thus, to increment our greeting counter, you can simply do:
451
451
 
452
452
  loop do
453
453
  puts "Hello, #{config.recipient}!"
454
- metrics.greetings_total.increment(recipient: config.recipient)
454
+ metrics.greetings_total.increment(recipient: config.recipient)
455
455
  sleep 1
456
456
  end
457
457
  end
@@ -470,7 +470,7 @@ before defining the metric accessor method, which keeps typing to a minimum:
470
470
 
471
471
  loop do
472
472
  puts "Hello, #{config.recipient}!"
473
- metrics.greetings_total.increment(recipient: config.recipient)
473
+ metrics.greetings_total.increment(recipient: config.recipient)
474
474
  sleep 1
475
475
  end
476
476
  end
@@ -75,6 +75,12 @@ class ServiceSkeleton
75
75
  end
76
76
  end
77
77
 
78
+ def path_list(var_name, default: UNDEFINED, sensitive: false)
79
+ register_variable(var_name, sensitive: sensitive) do |value|
80
+ value.split(":")
81
+ end
82
+ end
83
+
78
84
  private
79
85
 
80
86
  def maybe_default(value, default, var_name)
@@ -112,6 +112,9 @@ class ServiceSkeleton
112
112
  logger.error(logloc) { "Mysterious return from select: #{ios.inspect}" }
113
113
  end
114
114
  end
115
+ rescue IOError
116
+ # Something has gone terribly wrong here... bail
117
+ break
115
118
  rescue StandardError => ex
116
119
  log_exception(ex) { "Exception in select loop" }
117
120
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: service_skeleton
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0.20.gb9a0460
4
+ version: 0.0.0.25.gbf57918
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Palmer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-13 00:00:00.000000000 Z
11
+ date: 2019-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: frankenstein