prometheus-splash 0.7.0 → 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +26 -1
- data/README.md +1 -1
- data/config/splash.yml +33 -5
- data/lib/splash/backends.rb +1 -0
- data/lib/splash/cli.rb +2 -1
- data/lib/splash/cli/daemon.rb +41 -1
- data/lib/splash/cli/transfers.rb +206 -0
- data/lib/splash/cli/webadmin.rb +3 -3
- data/lib/splash/config.rb +44 -30
- data/lib/splash/constants.rb +7 -2
- data/lib/splash/daemon/metrics.rb +6 -6
- data/lib/splash/daemon/orchestrator.rb +76 -36
- data/lib/splash/daemon/orchestrator/grammar.rb +16 -1
- data/lib/splash/dependencies.rb +6 -1
- data/lib/splash/helpers.rb +11 -2
- data/lib/splash/loggers/cli.rb +2 -10
- data/lib/splash/transfers.rb +224 -0
- data/lib/splash/webadmin.rb +3 -3
- data/lib/splash/webadmin/main.rb +1 -0
- data/lib/splash/webadmin/portal/controllers/home.rb +19 -0
- data/lib/splash/webadmin/portal/controllers/proxy.rb +10 -2
- data/lib/splash/webadmin/portal/views/home.slim +50 -5
- data/lib/splash/webadmin/portal/views/proxy.slim +3 -0
- data/prometheus-splash.gemspec +5 -2
- metadata +62 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: db8cc49d7a0a733b08a9f744a2ac14b5196b69fc229fcd77c9c635dd9e6c61e8
|
4
|
+
data.tar.gz: c839f4d20b88880a458e92de5b2d10f7d58788645fb7b03c0c8e63d403f5ec78
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6d1314705d22d1da16a62b265c0a9967b3fa2cd049db1dd25af3631b144b7872da48a84d1c62d36cc9fa650cb398ab4beaba9523d46f79bde52f3b6382b586e3
|
7
|
+
data.tar.gz: d8d637a2ea309860d988952f87c63b906c1b4c350dfa5327f12f84ddc0cd352c3ca4b7112ac2f180b890d2acc3553db2caaa0abda3fc1a77a0eccf88d6c44f85
|
data/CHANGELOG.md
CHANGED
@@ -124,4 +124,29 @@
|
|
124
124
|
### FEATURE
|
125
125
|
|
126
126
|
* processes monitoring #23
|
127
|
-
|
127
|
+
|
128
|
+
## V 0.6.0 2020/10/10
|
129
|
+
|
130
|
+
### FEATURE
|
131
|
+
|
132
|
+
* read only WebAdmin (Major update)
|
133
|
+
* API REST
|
134
|
+
* refactoring
|
135
|
+
|
136
|
+
## V 0.7.0
|
137
|
+
|
138
|
+
### FEATURE
|
139
|
+
|
140
|
+
* sequences
|
141
|
+
* API sequences
|
142
|
+
* UI sequences
|
143
|
+
* Transfers
|
144
|
+
* API Transfers
|
145
|
+
* UI Transfers
|
146
|
+
|
147
|
+
## V 0.8.0
|
148
|
+
|
149
|
+
### FEATURE
|
150
|
+
* orchestrator rebuild
|
151
|
+
* reshash config and reset + grammar and Cli
|
152
|
+
* refacto config
|
data/README.md
CHANGED
@@ -9,7 +9,7 @@ SPLASH is **Supervision with Prometheus of Logs and Asynchronous tasks orchestra
|
|
9
9
|
* Web : http://www.ultragreen.net
|
10
10
|
* Github : https://github.com/Ultragreen/prometheus-splash
|
11
11
|
* Rubygems : https://rubygems.org/gems/prometheus-splash
|
12
|
-
* DOC yardoc : https://www.rubydoc.info/gems/prometheus-splash/0.
|
12
|
+
* DOC yardoc : https://www.rubydoc.info/gems/prometheus-splash/0.8.0
|
13
13
|
|
14
14
|
Prometheus Logs and Batchs supervision over PushGateway
|
15
15
|
|
data/config/splash.yml
CHANGED
@@ -2,6 +2,9 @@
|
|
2
2
|
:splash:
|
3
3
|
|
4
4
|
### Main Configuration
|
5
|
+
:paths:
|
6
|
+
:pid_path: /var/run/splash
|
7
|
+
:trace_path: /var/run/splash/traces
|
5
8
|
:loggers:
|
6
9
|
:level: :info
|
7
10
|
:daemon:
|
@@ -23,6 +26,10 @@
|
|
23
26
|
# :port: 6379
|
24
27
|
# #:auth: "mykey"
|
25
28
|
# :base: 1
|
29
|
+
:transferts_trace:
|
30
|
+
:type: :file
|
31
|
+
:path: /var/run/splash/transferts
|
32
|
+
|
26
33
|
:transports:
|
27
34
|
:active: :rabbitmq
|
28
35
|
:rabbitmq:
|
@@ -39,16 +46,14 @@
|
|
39
46
|
:procmon_scheduling:
|
40
47
|
:every: 20s
|
41
48
|
:process_name: "Splash : daemon."
|
42
|
-
:paths:
|
43
|
-
:pid_path: /var/run/splash
|
44
|
-
:trace_path: /var/run/splash/traces
|
45
49
|
:files:
|
46
50
|
:stdout_trace: stdout.txt
|
47
51
|
:stderr_trace: stderr.txt
|
48
52
|
:pid_file: splash.pid
|
49
53
|
:prometheus:
|
50
|
-
:pushgateway: 'http://localhost:9091
|
51
|
-
:url: 'http://localhost:9090
|
54
|
+
:pushgateway: 'http://localhost:9091'
|
55
|
+
:url: 'http://localhost:9090'
|
56
|
+
:alertmanager: 'http://localhost:9093'
|
52
57
|
:webadmin:
|
53
58
|
:port: 9234
|
54
59
|
:ip: 127.0.0.1
|
@@ -175,4 +180,27 @@
|
|
175
180
|
- :step: exec echo3
|
176
181
|
:command: :echo3
|
177
182
|
|
183
|
+
### Transfers
|
184
|
+
:transfers:
|
185
|
+
- :name: :transfer_text
|
186
|
+
:desc: "List of text files"
|
187
|
+
:pattern: '*.txt'
|
188
|
+
:backup: true
|
189
|
+
:type: :push
|
190
|
+
:retention:
|
191
|
+
:hours: 1
|
192
|
+
:local:
|
193
|
+
:path: /tmp/transferts
|
194
|
+
:user: root
|
195
|
+
:remote:
|
196
|
+
:user: root
|
197
|
+
:host: localhost
|
198
|
+
:path: /tmp/
|
199
|
+
:post:
|
200
|
+
:remote_command: 'ls'
|
201
|
+
|
202
|
+
|
203
|
+
|
204
|
+
|
205
|
+
|
178
206
|
###
|
data/lib/splash/backends.rb
CHANGED
@@ -13,6 +13,7 @@ module Splash
|
|
13
13
|
# @param [Symbol] store the name of the store actually in [:execution_trace]
|
14
14
|
# @return [Splash::Backends::<Type>|Hash] with type in [:redis,:file] or Exiter case :configuration_error
|
15
15
|
def get_backend(store)
|
16
|
+
splash_exit case: :configuration_error, more: "backend definition failure" if get_config[:backends][:stores][store].nil?
|
16
17
|
backend = get_config[:backends][:stores][store][:type].to_s
|
17
18
|
aclass = "Splash::Backends::#{backend.capitalize}"
|
18
19
|
begin
|
data/lib/splash/cli.rb
CHANGED
@@ -43,6 +43,7 @@ class CLI < Thor
|
|
43
43
|
subcommand "documentation", Documentation
|
44
44
|
desc "webadmin SUBCOMMAND ...ARGS", "Splash Webadmin daemon controller"
|
45
45
|
subcommand "webadmin", WebAdmin
|
46
|
-
|
46
|
+
desc "transfers SUBCOMMAND ...ARGS", "Managing transfers"
|
47
|
+
subcommand "transfers", Transfers
|
47
48
|
|
48
49
|
end
|
data/lib/splash/cli/daemon.rb
CHANGED
@@ -74,7 +74,47 @@ module CLISplash
|
|
74
74
|
splash_exit case: :quiet_exit
|
75
75
|
end
|
76
76
|
rescue Interrupt
|
77
|
-
splash_exit status: :error, case: :interrupt, more: "
|
77
|
+
splash_exit status: :error, case: :interrupt, more: "ping Command"
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
# Thor method : sending get_jobs verb over transport in the input queue of Splashd
|
82
|
+
desc "getjobs", "send a get_jobs verb to HOSTNAME daemon over transport (need an active tranport), Typicallly RabbitMQ"
|
83
|
+
def getjobs(hostname=Socket.gethostname)
|
84
|
+
log = get_logger
|
85
|
+
log.info "ctrl+c for interrupt"
|
86
|
+
begin
|
87
|
+
transport = get_default_client
|
88
|
+
if transport.class == Hash and transport.include? :case then
|
89
|
+
splash_exit transport
|
90
|
+
else
|
91
|
+
log.receive transport.execute({ :verb => :get_jobs,
|
92
|
+
:return_to => "splash.#{Socket.gethostname}.returncli",
|
93
|
+
:queue => "splash.#{hostname}.input" })
|
94
|
+
splash_exit case: :quiet_exit
|
95
|
+
end
|
96
|
+
rescue Interrupt
|
97
|
+
splash_exit status: :error, case: :interrupt, more: "getjobs Command"
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
# Thor method : sending reset verb over transport in the input queue of Splashd
|
102
|
+
desc "getjobs", "send a reset verb to HOSTNAME daemon over transport (need an active tranport), Typicallly RabbitMQ"
|
103
|
+
def reset(hostname=Socket.gethostname)
|
104
|
+
log = get_logger
|
105
|
+
log.info "ctrl+c for interrupt"
|
106
|
+
begin
|
107
|
+
transport = get_default_client
|
108
|
+
if transport.class == Hash and transport.include? :case then
|
109
|
+
splash_exit transport
|
110
|
+
else
|
111
|
+
log.receive transport.execute({ :verb => :reset,
|
112
|
+
:return_to => "splash.#{Socket.gethostname}.returncli",
|
113
|
+
:queue => "splash.#{hostname}.input" })
|
114
|
+
splash_exit case: :quiet_exit
|
115
|
+
end
|
116
|
+
rescue Interrupt
|
117
|
+
splash_exit status: :error, case: :interrupt, more: "reset Command"
|
78
118
|
end
|
79
119
|
end
|
80
120
|
|
@@ -0,0 +1,206 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
# module for all Thor subcommands
|
4
|
+
module CLISplash
|
5
|
+
|
6
|
+
# Thor inherited class for transfers management
|
7
|
+
class Transfers < Thor
|
8
|
+
include Splash::Transfers
|
9
|
+
include Splash::Helpers
|
10
|
+
include Splash::Exiter
|
11
|
+
include Splash::Loggers
|
12
|
+
include Splash::Transfers
|
13
|
+
|
14
|
+
|
15
|
+
# Thor method : running transfer prepare
|
16
|
+
long_desc <<-LONGDESC
|
17
|
+
Prepare transfer with RSA Public key for NAME\n
|
18
|
+
Warning : interactive command only (prompt for passwd)
|
19
|
+
LONGDESC
|
20
|
+
desc "prepare", "Prepare transfers with RSA Public key"
|
21
|
+
def prepare(name)
|
22
|
+
acase = run_as_root :prepare_tx, name
|
23
|
+
splash_exit acase
|
24
|
+
end
|
25
|
+
|
26
|
+
# Thor method : Execute all transfers
|
27
|
+
long_desc <<-LONGDESC
|
28
|
+
Execute all transfers\n
|
29
|
+
Warning : interactive command only (prompt for passwd)
|
30
|
+
LONGDESC
|
31
|
+
desc "full_execute", "Execute all transfers"
|
32
|
+
def full_execute
|
33
|
+
acase = run_as_root :run_txs
|
34
|
+
splash_exit acase
|
35
|
+
end
|
36
|
+
|
37
|
+
# Thor method : Get specific result for a transfers
|
38
|
+
long_desc <<-LONGDESC
|
39
|
+
Get specific result for a transfers\n
|
40
|
+
LONGDESC
|
41
|
+
option :date, :type => :string, :aliases => "-d"
|
42
|
+
desc "get_result TRANSFER", "Get specific result for a transfers "
|
43
|
+
def get_result(name)
|
44
|
+
log = get_logger
|
45
|
+
log.item "Transfer : #{name}"
|
46
|
+
config = get_config
|
47
|
+
data = TxRecords::new(name).get_all_records.select {|record,value| record == options[:date]}.first
|
48
|
+
if data.nil? then
|
49
|
+
log.ko "Result for #{name} on date #{options[:date]} not found"
|
50
|
+
splash_exit case: :not_found, :more => "Result inexistant"
|
51
|
+
else
|
52
|
+
record = options[:date]
|
53
|
+
value = data[record]
|
54
|
+
failed = (value[:count].nil? or value[:done].nil?)? 'undef': value[:count].to_i - value[:done].count
|
55
|
+
if value[:end_date].nil? then
|
56
|
+
log.item "Event : #{record} STATUS : #{value[:status]}"
|
57
|
+
else
|
58
|
+
log.item "Tx Begin : #{record} => end : #{value[:end_date]} STATUS : #{value[:status]}"
|
59
|
+
end
|
60
|
+
log.arrow "Tx Time : #{value[:time]}" unless value[:time].nil?
|
61
|
+
log.arrow "nb files : #{value[:count]}" unless value[:count].nil?
|
62
|
+
unless value[:wanted].nil?
|
63
|
+
log.arrow "Files wanted :" unless value[:wanted].empty?
|
64
|
+
value[:wanted].each do |file|
|
65
|
+
log.flat " * #{file}"
|
66
|
+
end
|
67
|
+
end
|
68
|
+
unless value[:done].nil?
|
69
|
+
log.arrow "Files done :" unless value[:done].empty?
|
70
|
+
value[:done].each do |file|
|
71
|
+
log.flat " * #{file}"
|
72
|
+
end
|
73
|
+
end
|
74
|
+
unless failed then
|
75
|
+
log.arrow "Nb failure : #{failed}"
|
76
|
+
end
|
77
|
+
|
78
|
+
end
|
79
|
+
splash_exit case: :quiet_exit
|
80
|
+
end
|
81
|
+
|
82
|
+
# Thor method : show specfic transfers history
|
83
|
+
long_desc <<-LONGDESC
|
84
|
+
show transfers history for transfer NAME\n
|
85
|
+
LONGDESC
|
86
|
+
option :table, :type => :boolean, :aliases => "-t"
|
87
|
+
desc "history", "Show transfers history"
|
88
|
+
def history(name)
|
89
|
+
log = get_logger
|
90
|
+
log.item "Transfer : #{name}"
|
91
|
+
config = get_config
|
92
|
+
if options[:table] then
|
93
|
+
table = TTY::Table.new do |t|
|
94
|
+
t << ["Start Date", "End date", "time", "Files count","File count error","Status"]
|
95
|
+
t << ['','','','','','']
|
96
|
+
TxRecords::new(name).get_all_records.each do |record,value|
|
97
|
+
start_date = record
|
98
|
+
end_date = (value[:end_date].nil?)? '': value[:end_date]
|
99
|
+
time = (value[:time].nil?)? '': value[:time]
|
100
|
+
count = (value[:count].nil?)? '': value[:count]
|
101
|
+
failed = (value[:count].nil? or value[:done].nil?)? '': value[:count].to_i - value[:done].count
|
102
|
+
status = value[:status]
|
103
|
+
t << [start_date, end_date, time, count, failed, status]
|
104
|
+
|
105
|
+
end
|
106
|
+
end
|
107
|
+
if check_unicode_term then
|
108
|
+
puts table.render(:unicode)
|
109
|
+
else
|
110
|
+
puts table.render(:ascii)
|
111
|
+
end
|
112
|
+
|
113
|
+
else
|
114
|
+
TxRecords::new(name).get_all_records.each do |record,value|
|
115
|
+
failed = (value[:count].nil? or value[:done].nil?)? 'undef': value[:count].to_i - value[:done].count
|
116
|
+
if value[:end_date].nil? then
|
117
|
+
log.item "Event : #{record} STATUS : #{value[:status]}"
|
118
|
+
else
|
119
|
+
log.item "Tx Begin : #{record} => end : #{value[:end_date]} STATUS : #{value[:status]}"
|
120
|
+
end
|
121
|
+
log.arrow "Tx Time : #{value[:time]}" unless value[:time].nil?
|
122
|
+
log.arrow "nb files : #{value[:count]}" unless value[:count].nil?
|
123
|
+
unless value[:wanted].nil?
|
124
|
+
log.arrow "Files wanted :" unless value[:wanted].empty?
|
125
|
+
value[:wanted].each do |file|
|
126
|
+
log.flat " * #{file}"
|
127
|
+
end
|
128
|
+
end
|
129
|
+
unless value[:done].nil?
|
130
|
+
log.arrow "Files done :" unless value[:done].empty?
|
131
|
+
value[:done].each do |file|
|
132
|
+
log.flat " * #{file}"
|
133
|
+
end
|
134
|
+
end
|
135
|
+
unless failed then
|
136
|
+
log.arrow "Nb failure : #{failed}"
|
137
|
+
end
|
138
|
+
|
139
|
+
end
|
140
|
+
end
|
141
|
+
splash_exit case: :quiet_exit
|
142
|
+
end
|
143
|
+
|
144
|
+
|
145
|
+
# Thor method : display a specific Splash configured transfer
|
146
|
+
desc "show TRANSFER", "show Splash configured transfer TRANSFER"
|
147
|
+
def show(transfer)
|
148
|
+
log = get_logger
|
149
|
+
transfer_record_set = get_config.transfers.select{|item| item[:name] == transfer.to_sym }
|
150
|
+
unless transfer_record_set.empty? then
|
151
|
+
record = transfer_record_set.first
|
152
|
+
log.info "Splash transfer : #{record[:name]}"
|
153
|
+
log.item "Description : /#{record[:desc]}/"
|
154
|
+
log.item "Type : #{record[:type].to_s}"
|
155
|
+
log.item "Backup file after copy : #{record[:backup].to_s}"
|
156
|
+
log.item "Local spool"
|
157
|
+
log.arrow "Path : #{record[:local][:path]}"
|
158
|
+
log.arrow "User : #{record[:local][:user]}"
|
159
|
+
log.item "Remote spool"
|
160
|
+
log.arrow "Path : #{record[:remote][:path]}"
|
161
|
+
log.arrow "User : #{record[:remote][:user]}"
|
162
|
+
log.arrow "Host : #{record[:remote][:host]}"
|
163
|
+
log.item "Post execution"
|
164
|
+
log.arrow "Remote command : #{record[:post][:remote_command]}" unless record[:post][:remote_command].nil?
|
165
|
+
log.arrow "Local command : #{record[:post][:local_command]}" unless record[:post][:local_command].nil?
|
166
|
+
splash_exit case: :quiet_exit
|
167
|
+
else
|
168
|
+
splash_exit case: :not_found, :more => "log not configured"
|
169
|
+
end
|
170
|
+
end
|
171
|
+
|
172
|
+
# Thor method : display the full list of Splash configured transfers
|
173
|
+
desc "list", "List all Splash configured transfers"
|
174
|
+
long_desc <<-LONGDESC
|
175
|
+
Show configured transfers\n
|
176
|
+
with --detail, show transfers details
|
177
|
+
LONGDESC
|
178
|
+
option :detail, :type => :boolean, :aliases => "-D"
|
179
|
+
def list
|
180
|
+
log = get_logger
|
181
|
+
log.info "Splash configured transfer :"
|
182
|
+
tx_record_set = get_config.transfers
|
183
|
+
log.ko 'No configured transfers found' if tx_record_set.empty?
|
184
|
+
tx_record_set.each do |record|
|
185
|
+
log.item "Transfer : #{record[:name]} Description : #{record[:desc]}"
|
186
|
+
if options[:detail] then
|
187
|
+
log.arrow "Type : #{record[:type].to_s}"
|
188
|
+
log.arrow "Backup file after copy : #{record[:backup].to_s}"
|
189
|
+
log.arrow "Local spool"
|
190
|
+
log.flat " * Path : #{record[:local][:path]}"
|
191
|
+
log.flat " * User : #{record[:local][:user]}"
|
192
|
+
log.arrow "Remote spool"
|
193
|
+
log.flat " * Path : #{record[:remote][:path]}"
|
194
|
+
log.flat " * User : #{record[:remote][:user]}"
|
195
|
+
log.flat " * Host : #{record[:remote][:host]}"
|
196
|
+
log.arrow "Post execution"
|
197
|
+
log.flat " * Remote command : #{record[:post][:remote_command]}" unless record[:post][:remote_command].nil?
|
198
|
+
log.flat " * Local command : #{record[:post][:local_command]}" unless record[:post][:local_command].nil?
|
199
|
+
end
|
200
|
+
end
|
201
|
+
splash_exit case: :quiet_exit
|
202
|
+
end
|
203
|
+
|
204
|
+
end
|
205
|
+
|
206
|
+
end
|
data/lib/splash/cli/webadmin.rb
CHANGED
@@ -14,14 +14,14 @@ module CLISplash
|
|
14
14
|
# Thor method : stopping Splash Webadmin
|
15
15
|
desc "stop", "Stopping Splash Webadmin Daemon"
|
16
16
|
def stop
|
17
|
-
acase = run_as_root :
|
17
|
+
acase = run_as_root :stopweb, options
|
18
18
|
splash_exit acase
|
19
19
|
end
|
20
20
|
|
21
21
|
# Thor method : getting execution status of Splashd
|
22
22
|
desc "status", "Splash WebAdmin Daemon status"
|
23
23
|
def status
|
24
|
-
acase = run_as_root :
|
24
|
+
acase = run_as_root :statusweb, options
|
25
25
|
splash_exit acase
|
26
26
|
end
|
27
27
|
|
@@ -37,7 +37,7 @@ module CLISplash
|
|
37
37
|
LONGDESC
|
38
38
|
desc "start", "Splash WebAdmin Daemon status"
|
39
39
|
def start
|
40
|
-
acase = run_as_root :
|
40
|
+
acase = run_as_root :startweb
|
41
41
|
splash_exit acase
|
42
42
|
end
|
43
43
|
|
data/lib/splash/config.rb
CHANGED
@@ -24,11 +24,15 @@ module Splash
|
|
24
24
|
|
25
25
|
self[:prometheus_url] = (config_from_file[:prometheus][:url])? config_from_file[:prometheus][:url] : PROMETHEUS_URL
|
26
26
|
self[:prometheus_pushgateway_url] = (config_from_file[:prometheus][:pushgateway])? config_from_file[:prometheus][:pushgateway] : PROMETHEUS_PUSHGATEWAY_URL
|
27
|
+
self[:prometheus_alertmanager_url] = (config_from_file[:prometheus][:alertmanager])? config_from_file[:prometheus][:alertmanager] : PROMETHEUS_ALERTMANAGER_URL
|
27
28
|
|
28
29
|
self[:daemon_process_name] = (config_from_file[:daemon][:process_name])? config_from_file[:daemon][:process_name] : DAEMON_PROCESS_NAME
|
29
30
|
self[:daemon_logmon_scheduling] = (config_from_file[:daemon][:logmon_scheduling])? config_from_file[:daemon][:logmon_scheduling] : DAEMON_LOGMON_SCHEDULING
|
30
31
|
self[:daemon_metrics_scheduling] = (config_from_file[:daemon][:metrics_scheduling])? config_from_file[:daemon][:metrics_scheduling] : DAEMON_METRICS_SCHEDULING
|
31
32
|
self[:daemon_procmon_scheduling] = (config_from_file[:daemon][:procmon_scheduling])? config_from_file[:daemon][:procmon_scheduling] : DAEMON_PROCMON_SCHEDULING
|
33
|
+
self[:daemon_pid_file] = (config_from_file[:daemon][:files][:pid_file])? config_from_file[:daemon][:files][:pid_file] : DAEMON_PID_FILE
|
34
|
+
self[:daemon_stdout_trace] = (config_from_file[:daemon][:files][:stdout_trace])? config_from_file[:daemon][:files][:stdout_trace] : DAEMON_STDOUT_TRACE
|
35
|
+
self[:daemon_stderr_trace] = (config_from_file[:daemon][:files][:stderr_trace])? config_from_file[:daemon][:files][:stderr_trace] : DAEMON_STDERR_TRACE
|
32
36
|
|
33
37
|
|
34
38
|
self[:webadmin_port] = (config_from_file[:webadmin][:port])? config_from_file[:webadmin][:port] : WEBADMIN_PORT
|
@@ -40,15 +44,12 @@ module Splash
|
|
40
44
|
self[:webadmin_stderr_trace] = (config_from_file[:webadmin][:files][:stderr_trace])? config_from_file[:webadmin][:files][:stderr_trace] : WEBADMIN_STDERR_TRACE
|
41
45
|
|
42
46
|
|
43
|
-
self[:pid_path] = (config_from_file[:
|
44
|
-
self[:trace_path] = (config_from_file[:
|
47
|
+
self[:pid_path] = (config_from_file[:paths][:pid_path])? config_from_file[:paths][:pid_path] : PID_PATH
|
48
|
+
self[:trace_path] = (config_from_file[:paths][:trace_path])? config_from_file[:paths][:trace_path] : TRACE_PATH
|
45
49
|
|
46
50
|
|
47
51
|
self[:execution_template_tokens] = EXECUTION_TEMPLATE_TOKENS_LIST
|
48
52
|
self[:execution_template_path] = (config_from_file[:templates][:execution][:path])? config_from_file[:templates][:execution][:path] : EXECUTION_TEMPLATE
|
49
|
-
self[:pid_file] = (config_from_file[:daemon][:files][:pid_file])? config_from_file[:daemon][:files][:pid_file] : DAEMON_PID_FILE
|
50
|
-
self[:stdout_trace] = (config_from_file[:daemon][:files][:stdout_trace])? config_from_file[:daemon][:files][:stdout_trace] : DAEMON_STDOUT_TRACE
|
51
|
-
self[:stderr_trace] = (config_from_file[:daemon][:files][:stderr_trace])? config_from_file[:daemon][:files][:stderr_trace] : DAEMON_STDERR_TRACE
|
52
53
|
|
53
54
|
self[:transports] = {} ; self[:transports].merge! TRANSPORTS_STRUCT ; self[:transports].merge! config_from_file[:transports] if config_from_file[:transports]
|
54
55
|
self[:backends] = {} ; self[:backends].merge! BACKENDS_STRUCT ; self[:backends].merge! config_from_file[:backends] if config_from_file[:backends]
|
@@ -58,6 +59,7 @@ module Splash
|
|
58
59
|
self[:logs] = (config_from_file[:logs])? config_from_file[:logs] : {}
|
59
60
|
self[:commands] = (config_from_file[:commands])? config_from_file[:commands] : {}
|
60
61
|
self[:sequences] = (config_from_file[:sequences])? config_from_file[:sequences] : {}
|
62
|
+
self[:transfers] = (config_from_file[:transfers])? config_from_file[:transfers] : {}
|
61
63
|
|
62
64
|
end
|
63
65
|
|
@@ -87,6 +89,12 @@ module Splash
|
|
87
89
|
return self[:transports]
|
88
90
|
end
|
89
91
|
|
92
|
+
# getter for transfers Hash Config sample
|
93
|
+
# @return [Hash]
|
94
|
+
def transfers
|
95
|
+
return self[:transfers]
|
96
|
+
end
|
97
|
+
|
90
98
|
# getter for daemon_logmon_scheduling Hash Config sample
|
91
99
|
# @return [Hash]
|
92
100
|
def daemon_logmon_scheduling
|
@@ -105,6 +113,31 @@ module Splash
|
|
105
113
|
return self[:daemon_metrics_scheduling]
|
106
114
|
end
|
107
115
|
|
116
|
+
# getter for daemon_process_name Config sample
|
117
|
+
# @return [String]
|
118
|
+
def daemon_process_name
|
119
|
+
return self[:daemon_process_name]
|
120
|
+
end
|
121
|
+
|
122
|
+
|
123
|
+
# getter for daemon_full_pid_path Config sample
|
124
|
+
# @return [String]
|
125
|
+
def daemon_full_pid_path
|
126
|
+
return "#{self[:pid_path]}/#{self[:daemon_pid_file]}"
|
127
|
+
end
|
128
|
+
|
129
|
+
# getter for daemon_full_stdout_trace_path Config sample
|
130
|
+
# @return [String]
|
131
|
+
def daemon_full_stdout_trace_path
|
132
|
+
return "#{self[:trace_path]}/#{self[:daemon_stdout_trace]}"
|
133
|
+
end
|
134
|
+
|
135
|
+
# getter for daemon_full_stderr_trace_path Config sample
|
136
|
+
# @return [String]
|
137
|
+
def daemon_full_stderr_trace_path
|
138
|
+
return "#{self[:trace_path]}/#{self[:daemon_stderr_trace]}"
|
139
|
+
end
|
140
|
+
|
108
141
|
# getter for execution_template_path Hash Config sample
|
109
142
|
# @return [String]
|
110
143
|
def execution_template_path
|
@@ -215,36 +248,17 @@ module Splash
|
|
215
248
|
return self[:prometheus_pushgateway_url]
|
216
249
|
end
|
217
250
|
|
218
|
-
# getter for
|
251
|
+
# getter for prometheus_alertmanager_url Config sample
|
219
252
|
# @return [String]
|
220
|
-
def
|
221
|
-
return self[:
|
253
|
+
def prometheus_alertmanager_url
|
254
|
+
return self[:prometheus_alertmanager_url]
|
222
255
|
end
|
223
256
|
|
224
257
|
|
225
|
-
# getter for
|
226
|
-
# @return [String]
|
227
|
-
def daemon_process_name
|
228
|
-
return self[:daemon_process_name]
|
229
|
-
end
|
230
|
-
|
231
|
-
|
232
|
-
# getter for daemon_full_pid_path Config sample
|
233
|
-
# @return [String]
|
234
|
-
def daemon_full_pid_path
|
235
|
-
return "#{self[:pid_path]}/#{self[:pid_file]}"
|
236
|
-
end
|
237
|
-
|
238
|
-
# getter for daemon_full_stdout_trace_path Config sample
|
239
|
-
# @return [String]
|
240
|
-
def daemon_full_stdout_trace_path
|
241
|
-
return "#{self[:trace_path]}/#{self[:stdout_trace]}"
|
242
|
-
end
|
243
|
-
|
244
|
-
# getter for daemon_full_stderr_trace_path Config sample
|
258
|
+
# getter for prometheus_url Config sample
|
245
259
|
# @return [String]
|
246
|
-
def
|
247
|
-
return
|
260
|
+
def prometheus_url
|
261
|
+
return self[:prometheus_url]
|
248
262
|
end
|
249
263
|
|
250
264
|
# @!endgroup
|