Module: Flapjack
- Defined in:
- lib/flapjack/data/alert.rb,
lib/flapjack.rb,
lib/flapjack/logger.rb,
lib/flapjack/pikelet.rb,
lib/flapjack/utility.rb,
lib/flapjack/version.rb,
lib/flapjack/data/tag.rb,
lib/flapjack/notifier.rb,
lib/flapjack/cli/purge.rb,
lib/flapjack/data/rule.rb,
lib/flapjack/processor.rb,
lib/flapjack/cli/server.rb,
lib/flapjack/data/check.rb,
lib/flapjack/data/event.rb,
lib/flapjack/data/state.rb,
lib/flapjack/exceptions.rb,
lib/flapjack/filters/ok.rb,
lib/flapjack/cli/flapper.rb,
lib/flapjack/cli/migrate.rb,
lib/flapjack/coordinator.rb,
lib/flapjack/data/medium.rb,
lib/flapjack/redis_proxy.rb,
lib/flapjack/cli/receiver.rb,
lib/flapjack/cli/simulate.rb,
lib/flapjack/data/contact.rb,
lib/flapjack/data/metrics.rb,
lib/flapjack/filters/base.rb,
lib/flapjack/gateways/web.rb,
lib/flapjack/record_queue.rb,
lib/flapjack/configuration.rb,
lib/flapjack/data/condition.rb,
lib/flapjack/data/statistic.rb,
lib/flapjack/filters/delays.rb,
lib/flapjack/gateways/email.rb,
lib/flapjack/gateways/slack.rb,
lib/flapjack/cli/maintenance.rb,
lib/flapjack/gateways/jabber.rb,
lib/flapjack/gateways/aws_sns.rb,
lib/flapjack/gateways/jsonapi.rb,
lib/flapjack/gateways/oobetet.rb,
lib/flapjack/data/notification.rb,
lib/flapjack/gateways/sms_nexmo.rb,
lib/flapjack/gateways/pager_duty.rb,
lib/flapjack/gateways/sms_aspsms.rb,
lib/flapjack/gateways/sms_twilio.rb,
lib/flapjack/data/acknowledgement.rb,
lib/flapjack/data/test_notification.rb,
lib/flapjack/filters/acknowledgement.rb,
lib/flapjack/gateways/sms_messagenet.rb,
lib/flapjack/data/extensions/short_name.rb,
lib/flapjack/data/scheduled_maintenance.rb,
lib/flapjack/data/extensions/associations.rb,
lib/flapjack/data/unscheduled_maintenance.rb,
lib/flapjack/data/validators/id_validator.rb,
lib/flapjack/filters/scheduled_maintenance.rb,
lib/flapjack/filters/unscheduled_maintenance.rb,
lib/flapjack/gateways/jsonapi/helpers/headers.rb,
lib/flapjack/gateways/jsonapi/methods/metrics.rb,
lib/flapjack/gateways/jsonapi/helpers/resources.rb,
lib/flapjack/gateways/jsonapi/helpers/serialiser.rb,
lib/flapjack/gateways/jsonapi/data/join_descriptor.rb,
lib/flapjack/gateways/jsonapi/helpers/swagger_docs.rb,
lib/flapjack/gateways/jsonapi/methods/resource_get.rb,
lib/flapjack/gateways/jsonapi/helpers/miscellaneous.rb,
lib/flapjack/gateways/jsonapi/methods/resource_post.rb,
lib/flapjack/gateways/jsonapi/data/method_descriptor.rb,
lib/flapjack/gateways/jsonapi/methods/resource_patch.rb,
lib/flapjack/gateways/jsonapi/methods/association_get.rb,
lib/flapjack/gateways/jsonapi/methods/resource_delete.rb,
lib/flapjack/gateways/jsonapi/methods/association_post.rb,
lib/flapjack/gateways/web/middleware/request_timestamp.rb,
lib/flapjack/gateways/jsonapi/methods/association_patch.rb,
lib/flapjack/gateways/jsonapi/methods/association_delete.rb,
lib/flapjack/gateways/jsonapi/middleware/array_param_fixer.rb,
lib/flapjack/gateways/jsonapi/middleware/request_timestamp.rb,
lib/flapjack/gateways/jsonapi/middleware/json_params_parser.rb
Overview
Hat-tip to github.com/glasnt for the suggestion
Defined Under Namespace
Modules: CLI, Data, Filters, Gateways, Pikelet, Utility Classes: Configuration, Coordinator, GlobalStop, Logger, Notifier, PikeletStop, Processor, RecordQueue, RedisProxy
Constant Summary collapse
- UUID_RE =
"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}"
- DEFAULT_INITIAL_FAILURE_DELAY =
30
- DEFAULT_REPEAT_FAILURE_DELAY =
60
- DEFAULT_INITIAL_RECOVERY_DELAY =
defaulting to 0 for backwards compatibility; can be overridden in config, or per check / event
0
- VERSION =
'2.0.0'
Class Method Summary collapse
-
.configure_log(name, config = {}) ⇒ Object
Thread and fiber-local.
- .dump_json(data) ⇒ Object
- .load_json(data) ⇒ Object
- .logger ⇒ Object
- .logger=(l) ⇒ Object
-
.redis ⇒ Object
Thread and fiber-local.
- .sanitize(str) ⇒ Object
Class Method Details
.configure_log(name, config = {}) ⇒ Object
Thread and fiber-local
12 13 14 15 |
# File 'lib/flapjack/logger.rb', line 12 def configure_log(name, config = {}) Thread.current[:flapjack_logger_name] = name Thread.current[:flapjack_logger_config] = config end |
.dump_json(data) ⇒ Object
27 28 29 |
# File 'lib/flapjack.rb', line 27 def self.dump_json(data) ActiveSupport::JSON.encode(data) end |
.load_json(data) ⇒ Object
23 24 25 |
# File 'lib/flapjack.rb', line 23 def self.load_json(data) ActiveSupport::JSON.decode(data) end |
.logger ⇒ Object
21 22 23 24 25 26 |
# File 'lib/flapjack/logger.rb', line 21 def logger Thread.current[:flapjack_logger] ||= Flapjack::Logger.new( Thread.current[:flapjack_logger_name] || 'default', Thread.current[:flapjack_logger_config] || {} ) end |
.logger=(l) ⇒ Object
17 18 19 |
# File 'lib/flapjack/logger.rb', line 17 def logger=(l) Thread.current[:flapjack_logger] = l end |
.redis ⇒ Object
Thread and fiber-local
12 13 14 15 16 |
# File 'lib/flapjack/redis_proxy.rb', line 12 def redis redis_cxn = Thread.current[:flapjack_redis] return redis_cxn unless redis_cxn.nil? Thread.current[:flapjack_redis] = Flapjack::RedisProxy.new end |
.sanitize(str) ⇒ Object
31 32 33 34 35 |
# File 'lib/flapjack.rb', line 31 def self.sanitize(str) return str if str.nil? || !str.is_a?(String) || str.valid_encoding? return str.scrub('?') if str.respond_to(:scrub) str.chars.collect {|c| c.valid_encoding? ? c : '_' }.join end |