2018-11-21 Mahlon E. Smith @ * .hgsigs: | Added signature for changeset b4227ca091d2 | [5f37211d2302] [tip] | o * .hgtags: | Added tag v0.4.0 for changeset cfafc1efb759 | [b4227ca091d2] | o * History.md, lib/arborist.rb: | Update history for 0.4.0 release. | [cfafc1efb759] [v0.4.0] | 2018-10-19 Michael Granger o * Rakefile, arborist.gemspec, lib/arborist/client.rb, | lib/arborist/monitor/socket.rb, lib/arborist/monitor_runner.rb, | lib/arborist/node.rb, lib/arborist/node/root.rb, | spec/arborist/manager_spec.rb, spec/arborist/mixins_spec.rb, | spec/arborist/node_spec.rb: | Clean up a bunch of warnings | [e726bd75bd8d] | 2018-11-07 Michael Granger o * lib/arborist/event.rb, lib/arborist/event/node_delta.rb, | lib/arborist/event/node_update.rb, lib/arborist/node.rb, | spec/arborist/event_spec.rb, spec/arborist/node_spec.rb: | Add informational node predicate to node | [2444837aae2a] | | o * .hgignore, lib/arborist/event/node.rb, lib/arborist/node.rb: |/ Add more event instrumentation | [ab5b16539fdf] | 2018-10-19 Michael Granger | o * spec/arborist/node_spec.rb: |/ Add better coverage for node operational attribute method | [cd09eab560b7] | 2018-10-17 Mahlon E. Smith o * lib/arborist/event/node.rb, lib/arborist/node.rb, | lib/arborist/observer/action.rb, spec/arborist/event/node_spec.rb, | spec/arborist/node_spec.rb, spec/arborist/observer/action_spec.rb: | Provide a rudamentary node flap detection, that is part of event | metadata for observers to act on. | [f7b7f7dede40] | 2018-09-10 Will Fife o * lib/arborist/command/summary.rb: | Add an alias for the 'summary' CLI command as 'status'. | [65ad40fe78bd] | 2018-09-13 Mahlon E. Smith o * lib/arborist/node.rb: | Add 'warnings' to the operational attributes. | [c22daed2c244] | 2018-08-29 Michael Granger o * .hgtags: | Added tag v0.3.0 for changeset 85964c7fbbd1 | [cdab66466740] | o * .hgsigs: | Added signature for changeset db70f921e653 | [85964c7fbbd1] [v0.3.0] | o * History.md, lib/arborist.rb: | Bunp the minor version, update history. | [db70f921e653] | o * Merge with 141000d6bec3 |\ [2a086894960c] | | | o * Manifest.txt, arborist.gemspec, spec/arborist/client_spec.rb, | | spec/arborist/observer_runner_spec.rb: | | Update the manifest, fix some uninitialized warnings from specs. | | [f3e8b0c913ef] | | | o * lib/arborist/command/run_once.rb: | | Add a `run` command for testing monitors | | [1bc6155c5e9c] | | | o * lib/arborist/node/host.rb: | | Shut up warnings about uninitialized instance vars | | [4329c98ea325] | | 2018-08-28 Michael Granger | o * spec/spec_helper.rb: | | Enabled RSpec warnings, example profiles | | [404f8d609524] | | 2018-08-29 Mahlon E. Smith o | * lib/arborist/node.rb, spec/arborist/node_spec.rb: |/ Acking an already acked node transitions the node to disabled. | [141000d6bec3] | 2018-08-24 Mahlon E. Smith o * lib/arborist/client.rb: | Use the proper exception when raising errors from the client, | instead of RuntimeError. | [ff0b0fea9a9f] | 2018-08-15 Mahlon E. Smith o * lib/arborist/command/tree.rb: | Add raw formatting for YAML and JSON to the tree command. | [f0b978d49569] | o * Rakefile, lib/arborist/command/ack.rb: | Optionally continue attempting to ack/clear nodes if some are | invalid. | [d379568d92cc] | o * lib/arborist/monitor/socket.rb: | Expose socket batch size to configurability. | [17866a8a66d6] | 2018-08-08 Michael Granger o * .hgtags: | Added tag v0.2.0 for changeset b5d07bcc4762 | [0a39e734c94d] | o * .hgsigs: | Added signature for changeset b7725c5136bc | [b5d07bcc4762] [v0.2.0] | o * History.md, README.md, TODO.md, arborist.gemspec, lib/arborist.rb: | Bump the minor version, update history and the to-do file. | [b7725c5136bc] | 2018-08-01 Mahlon E. Smith o * lib/arborist/manager.rb: | Add debug log for checkpoint timing. | [734e01730be6] | 2018-07-27 Mahlon E. Smith o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Fix behavior for child nodes whose parent transitions from 'down' to | 'warn'. | [b882060af0b3] | 2018-07-17 Mahlon E. Smith o * lib/arborist/cli.rb, lib/arborist/command/summary.rb: | Explicitly require tty* packages. | | (Avoid this garbage: https://github.com/piotrmurach/tty/issues/44) | [a2d9e1f2152b] | 2018-06-13 Mahlon E. Smith o * lib/arborist/command/tree.rb: | Implicitly return the path array. | [fbcb8bf9ddfe] | 2018-06-27 Michael Granger o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Add acknowledgement changes to delta events. | [f6b57c73929e] | o * Manifest.txt, lib/arborist/monitor/connection_batching.rb, | lib/arborist/monitor/socket.rb: | Add batching to the socket monitor | [1f4e91e437b5] | 2018-06-13 Mahlon E. Smith o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Allow the user config hash to be altered from the modify API call. | [035793721d25] | 2018-06-12 Mahlon E. Smith o * lib/arborist/command/tree.rb: | Add a --path argument to the 'tree' command, that displays parents | to the root when specified. | [f671d5b77b8f] | 2018-06-04 Mahlon E. Smith o * .gems, lib/arborist/node/root.rb: | Match the #update prototype with the parent class. | [4113973f3fac] | 2018-05-23 Mahlon E. Smith o * lib/arborist/client.rb, lib/arborist/observer.rb, | spec/arborist/client_spec.rb: | Add a DSL method for returning a Client singleton. | [e3e41bef9b6b] | o * TODO.md, lib/arborist/manager.rb, spec/arborist/manager_spec.rb: | Don't let #add_node automatically replace nodes with the same | identifier, instead leaving the remove step to the caller. | | Clean up the TODO a little. | [91ca8e3d3b42] | 2018-05-16 Mahlon E. Smith o * lib/arborist/cli.rb: | Provide a way to disable colors for misbehaving terms. | [a7c0524d382f] | o * lib/arborist/node/resource.rb, lib/arborist/node/service.rb: | Add 'category' to operation properties, so it can be returned in a | 'properties' search. | [a1358c86cfc4] | 2018-05-02 Mahlon E. Smith o * Manifest.txt: | Fix manifest. My bad. | [e863ec889801] | o * TODO.md, lib/arborist/node.rb, lib/arborist/node/resource.rb, | lib/arborist/node/service.rb, spec/arborist/node/resource_spec.rb, | spec/arborist/node/service_spec.rb, spec/arborist/node_spec.rb: | Add 'OR' matching to additional host/service/resource attributes. | [402decc461f2] | 2018-04-30 Mahlon E. Smith o * lib/arborist/client.rb: | Remove what seems like copy pasta, these instance vars are unused. | [63c59b1c9f79] | o * lib/arborist/manager.rb, spec/arborist/client_spec.rb, | spec/arborist/manager_spec.rb, | spec/arborist/observer_runner_spec.rb, spec/data/nodes/sidonie.rb, | spec/data/nodes/vhosts.rb: | Recurse into secondary dependencies for `deps` | [77e9deb4ec42] | o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Emit delta events when setting or clearing acknowledgements. | [d05610bec8dd] | o * lib/arborist/cli.rb: | Don't make loading config conditional, so loading config path from | ENV works as intended. | [b0531987a8b2] | o * Events.md: | The Events.md file should have been removed along with others in | changeset 2413f751677b. | [36d0911fc157] | o * lib/arborist/node.rb: | Remove extra 'is' in logging output. | [ade846808c0b] | 2018-04-27 Mahlon E. Smith o * lib/arborist/node.rb: | Call out the 'unknown' state explcitly. | [41a443946194] | 2018-04-25 Mahlon E. Smith o * lib/arborist/client.rb, spec/arborist/client_spec.rb: | Provide some helper methods on the client for performing some common | Tree API tasks. | [607e37bab20d] | 2018-04-25 Mahlon E. Smith o * lib/arborist/manager.rb, spec/arborist/manager_spec.rb: | Include explicit children nodes in the list returned by the 'deps' | API call. | [506ff511c368] | 2018-04-25 Mahlon E. Smith o * lib/arborist/node.rb: | Add a specific log formatter for the 'warn' state, change | nomenclature from 'unknown' to avoid confusion. | [c4769cf739cb] | 2018-04-18 Mahlon E. Smith o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Add a transition from down -> warn. | [a76b7e2c35b0] | 2018-04-18 Michael Granger o * lib/arborist/client.rb, lib/arborist/manager.rb, | lib/arborist/monitor_runner.rb, lib/arborist/node.rb, | spec/arborist/client_spec.rb, spec/arborist/monitor_runner_spec.rb, | spec/arborist/node_spec.rb: | Set the monitor key via a header on update | [5224888b1079] | 2018-04-18 Mahlon E. Smith o * lib/arborist/node/root.rb, spec/arborist/node/root_spec.rb: | Allow ack/unack on the root node to quiet and re-enable the tree. | [81cc274e239b] | o * lib/arborist/manager.rb, spec/arborist/manager_spec.rb: | Propagate ack and unack events to parent nodes. | [e0e8af8deb94] | o * lib/arborist/monitor_runner.rb, | spec/arborist/monitor_runner_spec.rb: | The _monitor_key attribute is only necessary for error/warn | tracking, not as part of the node properties. | [2b28f8aaf7f0] | o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Retain the previous time a node's status changed, for easy time | deltas between state transitions. | [7427b0e720da] | 2018-04-17 Mahlon E. Smith o * lib/arborist/observer/action.rb, | spec/arborist/observer/action_spec.rb: | Keep the observer daemon running if observer action blocks raise | exceptions. | [602afebedef0] | 2018-04-12 Mahlon E. Smith o * Rakefile: | Add pry as a dependency for the arborist client. | [01b83470cd9c] | 2018-04-11 Mahlon E. Smith o * lib/arborist/event/node.rb, spec/arborist/event/node_spec.rb: | Add the node type as additional metadata to node events. | [60a05edcfa1f] | o * lib/arborist/monitor/socket.rb, | spec/arborist/monitor/socket_spec.rb: | Remove redundant time attribute for socket monitoring. | [9f8556ccf9aa] | o * lib/arborist/event.rb, lib/arborist/event/node.rb, | spec/arborist/event/node_spec.rb, spec/arborist/event_spec.rb: | Add node parent to the default node event class, stick to symbols | for hash keys. | [983042e447ab] | o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Allow "OR-ing" of statuses/identifiers/types when matching. | [fc9d607c2a07] | 2018-04-09 Mahlon E. Smith o * lib/arborist/monitor.rb, spec/arborist/monitor_spec.rb: | Bugfix: Logic inversion for the monitor matching with exclude_down. | [69b6f08a561e] | 2018-04-07 Mahlon E. Smith o * lib/arborist/monitor_runner.rb: | Include the backtrace in logging if a monitor run fails. | [bff4c7373561] | o * Manifest.txt: | Fix manifest. | [bc513d98d005] | 2018-04-04 Mahlon E. Smith o * experiments/arborist.schema: | Add an identifier override attribute to the Arborist LDAP schema. | [f3644c8d9b0d] | o * Monitors.md, Nodes.md, Observers.md, Protocol.md, Tutorial.md, | experiments/manager-sockets.rb: | Remove some docs that have moved to arbori.st. | [2413f751677b] | o * lib/arborist/dependency.rb, spec/arborist/dependency_spec.rb: | Fix the description for subdependencies which are down | [6ba7c94e9c1b] | o * lib/arborist/monitor.rb, spec/arborist/monitor_spec.rb: | Make a best-effort attempt to serialize Arrays for the default | monitor exec behavior. | [d81c6f31ec25] | o * lib/arborist/cli.rb, lib/arborist/command/summary.rb, | lib/arborist/command/tree.rb: | Add the 'warn' state to the command line tools. | [edecbb537d4f] | o * lib/arborist/monitor.rb: | Explicitly cast exec() arguments to strings if the first argument | doesn't respond to #run. | | This falls through to attempt to spawn the argument, instead of | bailing with the more cryptic "no implcit conversion of X into | string" exception. | [7f30507eb90b] | 2018-03-21 Michael Granger o * lib/arborist/manager.rb: | Add Manager#inspect | [3bd59ed3254e] | o * lib/arborist/cli.rb, lib/arborist/command/ack.rb, | lib/arborist/command/reset.rb, lib/arborist/command/start.rb: | Restore dry-run mode for the CLI | [0c2126a1f09e] | o * experiments/run_monitors.rb, lib/arborist/client.rb, | lib/arborist/manager.rb, lib/arborist/monitor.rb, | lib/arborist/monitor_runner.rb, spec/arborist/client_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/monitor_spec.rb, | spec/data/monitors/pings.rb, spec/data/monitors/port_checks.rb: | Make the default node search return all nodes | | All nodes in the tree are returned by default now. You can omit | unreachable nodes with the `exclude_down` option/method. | [7ba6fa72b1a3] | 2018-03-12 Michael Granger o * README.md: | Remove the broken CI build link. | [07918fd4129a] | 2018-03-07 Michael Granger o * Manifest.txt: | Update the manifest. | [d71a4cbde9a0] | o * spec/arborist/node_spec.rb: | Add a spec for updates with both error and warning | [4b68d786e868] | 2018-03-03 Michael Granger o * experiments/yajl-vs-oj.rb: | Add experimental json library benchmarks | [df81401947b6] | o * .gems, Rakefile, arborist.gemspec, lib/arborist/client.rb, | lib/arborist/event/node_warn.rb, lib/arborist/manager.rb, | lib/arborist/node.rb, lib/arborist/tree_api.rb, | spec/arborist/client_spec.rb, spec/arborist/manager_spec.rb, | spec/arborist/node_spec.rb: | Add a warning state to nodes | [0ec9b57f875d] | 2018-02-21 Mahlon E. Smith o * lib/arborist/node/host.rb, lib/arborist/node/resource.rb, | lib/arborist/node/service.rb, spec/arborist/node/host_spec.rb: | Add an optional 'hostname' label to the host node DSL. | | This is a convenience matcher for selecting by host, since | identifiers are designed to be opaque, and description fields are | more human readable. | [ba379d048ec4] | o * lib/arborist/monitor.rb: | Add a configurable default splay for all instantiated Monitors. | [2e1e76442694] | o * .ruby-version, lib/arborist/monitor.rb, | lib/arborist/monitor_runner.rb, spec/arborist/manager_spec.rb, | spec/arborist/monitor_runner_spec.rb, spec/arborist/monitor_spec.rb: | Allow separate monitors to run in parallel. | [8a15f6ff2cc6] | 2018-02-06 Mahlon E. Smith o * lib/arborist/node.rb: | Allow the 'config' directive to be called multiple times. | [e19b588e2bed] | 2018-02-01 Mahlon E. Smith o * TODO.md: | Add a few recent discoveries that should be attended to. | [87797bb780d0] | 2018-01-10 Mahlon E. Smith o * lib/arborist/command/start.rb: | Add a hint for the 'start' command if the daemon app is unknown. | [1d535c655f9c] | o * lib/arborist/cli.rb: | Remove the Highline require. | [e1babdcf222a] | 2017-12-28 Mahlon E. Smith o * lib/arborist/command/summary.rb: | Fix newline display in summary mode. | [705ea112140d] | o * lib/arborist/monitor_runner.rb, | spec/arborist/monitor_runner_spec.rb: | Treat monitor runtime exceptions as errors. | [d940a51a54a5] | 2017-12-23 Mahlon E. Smith o * lib/arborist/cli.rb: | Simplify the command loading, remove unused code. | [edb03b628896] | 2017-12-11 Michael Granger o * lib/arborist/cli.rb: | Fix the #success_string CLI DSL method | [731cdb4916f7] | 2017-11-23 Mahlon E. Smith o * Manifest.txt: | Update manifest. | [bbfee3ed7fa3] | 2017-11-22 Michael Granger o * lib/arborist/command/watch.rb: | Make Enterprise[tm] | [2ea4f0cb5d7f] | 2017-11-22 Mahlon E. Smith o * Rakefile, arborist.gemspec, lib/arborist/manager.rb, | lib/arborist/node.rb, spec/arborist/manager_spec.rb, | spec/arborist/node_spec.rb: | Modifying a node's parent should reparent for a running manager. | [80f24df26c58] | o * lib/arborist/cli.rb, lib/arborist/command/ack.rb: | Make ack friendlier for batch updates, prompt for missing values. | [abee1c3cd29a] | o * .gems, Rakefile, arborist.gemspec, lib/arborist/cli.rb, | lib/arborist/command/summary.rb, lib/arborist/command/tree.rb, | lib/arborist/command/watch.rb: | Convert from highline to tty for the command line tools. | [97be02393284] | o * lib/arborist/command/summary.rb: | Add a 'summary' command, for quick display of existing problems. | [835dbd57e243] | 2017-11-20 Mahlon E. Smith o * lib/arborist/command/ack.rb: | Use the uid instead of gecos for default ack sender. | [6cdfa1e00068] | 2017-11-18 Mahlon E. Smith o * lib/arborist/command/ack.rb, lib/arborist/command/tree.rb: | Fixes for recent changes in the client API. | [1f3a100a456a] | 2017-11-16 Michael Granger o * lib/arborist/client.rb: | Fix some Client API docs | [a94db37dc8ef] | 2017-11-16 Mahlon E. Smith o * Events.md, lib/arborist/manager.rb, lib/arborist/node.rb, | lib/arborist/tree_api.rb: | Refactor event flow to fix publishing. | [aeae43332bd0] | o * lib/arborist/command/reset.rb: | Add a "reset" command to the client. | [eed312fb6526] | 2017-11-01 Michael Granger o * lib/arborist/event.rb: | Add a simplified #inspect for node objects | [3a5fdc6ee738] | o * Merged with 78f913c7bd4e |\ [8da021024c05] | | | o * lib/arborist/manager.rb, spec/arborist/manager_spec.rb: | | Collapse startup event into the heartbeat | | | | The startup event wasn't reliable because there was a race between | | sending it and clients who might be interested in it (re)connecting | | to the manager. We moved all the data from the startup event into | | the heartbeat event. | | [f1e034ac03bf] | | 2017-11-01 Mahlon E. Smith o | * lib/arborist/event.rb, spec/arborist/event_spec.rb: |/ Backed out changeset ac8e70b46bf4. | | Upon further reflection: subscription calls ONLY match node events, | not sys.* events. So if you want all node events, it has always been | that you can simply omit your event type. Since sys events are | unaffected, this is unnecessarily redundant. Revert. | [78f913c7bd4e] | 2017-10-27 Michael Granger o * certs/ged.pem: | Add my updated gem-signing cert | [2025d127b06d] | 2017-10-11 Mahlon E. Smith o * lib/arborist/event.rb, spec/arborist/event_spec.rb: | Add wildcard matching to node events. | [ac8e70b46bf4] | o * Manifest.txt, lib/arborist/client.rb, lib/arborist/manager.rb, | spec/arborist/client_spec.rb, spec/arborist/manager_spec.rb: | Normalize and emit better error messages from client commands, at | the expense of succinct method calls. | | Throw a client error if attempting to graft over a pre-existing | node. | [b683f02b91c1] | 2017-09-15 Mahlon E. Smith o * lib/arborist/manager.rb, spec/arborist/client_spec.rb, | spec/arborist/manager_spec.rb: | With even more thinking: Specifying a non existent node constitutes | an error. | [74148a9c3770] | 2017-09-15 Michael Granger o * lib/arborist/client.rb, lib/arborist/manager.rb, |\ spec/arborist/client_spec.rb: | | merged with 7fea2fdfbb90 | | [e4e2e2608c96] | | 2017-09-13 Michael Granger | o * TODO.md, lib/arborist.rb, lib/arborist/client.rb, | | lib/arborist/manager.rb, lib/arborist/node.rb, | | lib/arborist/node_subscription.rb, lib/arborist/subscription.rb, | | spec/arborist/client_spec.rb, spec/arborist/manager_spec.rb, | | spec/arborist/node_spec.rb, spec/arborist/node_subscription_spec.rb, | | spec/arborist/observer_runner_spec.rb, spec/data/nodes/yevaud.rb: | | Add introspection on secondary dependencies | | [dbe5ebcb13a4] | | 2017-09-15 Mahlon E. Smith o | * lib/arborist/manager.rb, spec/arborist/client_spec.rb: | | On second thought, fetch() should always return an array. Add a | | test. | | [7fea2fdfbb90] | | o | * lib/arborist/client.rb, lib/arborist/manager.rb, |/ spec/arborist/client_spec.rb: | Make high-level ack set/clear usage match other methods. Bail early | on an invalid fetch() starting node. | [12658e133803] | 2017-08-30 Michael Granger o * Rakefile, arborist.gemspec: | Specify RDoc 5.1 for development. | [b5ce09164313] | o * lib/arborist/monitor/socket.rb: | Socket monitors need the port, too. | [badf0ec88ff3] | o * Manifest.txt, TODO.md, lib/arborist/monitor.rb, | spec/arborist/monitor_spec.rb: | Allow callbacks modules to set the fetched node properties, too. | [c13f46c6c80e] | o * lib/arborist.rb, lib/arborist/client.rb, | lib/arborist/command/tree.rb, lib/arborist/manager.rb, | lib/arborist/monitor.rb, lib/arborist/monitor/socket.rb, | lib/arborist/monitor_runner.rb, lib/arborist/node.rb, | lib/arborist/node/ack.rb, lib/arborist/node/host.rb, | lib/arborist/node/resource.rb, lib/arborist/node/service.rb, | spec/arborist/monitor_spec.rb, spec/arborist/node_spec.rb, | spec/spec_helper.rb: | Add tree mode to the fetch treeapi action | [62702b377627] | o * lib/arborist/command/ack.rb: | Add an `ack` command | [10f1c48593ca] | o * lib/arborist/node.rb: | Stop nodes from flapping between acked and down | [c950bb562104] | o * Merged with upstream |\ [8016d54c5dc0] | | 2017-08-29 Michael Granger | o * lib/arborist/mixins.rb, spec/arborist/mixins_spec.rb: | | Add a DSLish accessor constructor to the MethodUtilities mixin | | [55586256bf71] | | 2017-08-30 Mahlon E. Smith o | * .ruby-version, README.md: |/ Bump ruby rvm version and copyright year. | [569e2d8626fc] | 2017-08-23 Michael Granger o * Protocol.md, lib/arborist/client.rb, lib/arborist/manager.rb, | lib/arborist/monitor_runner.rb, spec/arborist/client_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/monitor_runner_spec.rb: | Rename some actions in the Tree API for clarity | | - Rename `list` to `fetch` | - Rename `fetch` to `search` | [58b49a735dce] | o * lib/arborist/manager.rb, spec/arborist/manager_spec.rb: | Make the list of Tree API actions more explicit. | [be1d7adde321] | o * TODO.md: | Add a 0.3 feature to the TODO doc | [5d64adac0770] | o * lib/arborist/node.rb, lib/arborist/node/resource.rb, | spec/arborist/node_spec.rb: | Add a block to Node.parent_type to allow for more-expressive | declarations | [3aa0f2e0bb04] | o * .gems, Manifest.txt, Rakefile, TODO.md, arborist.gemspec, | experiments/monitor-client.rb, experiments/monitor-service.rb, | experiments/run_monitors.rb, experiments/yay-client.rb, | lib/arborist.rb, lib/arborist/client.rb, | lib/arborist/command/watch.rb, lib/arborist/event_api.rb, | lib/arborist/exceptions.rb, lib/arborist/manager.rb, | lib/arborist/manager/event_publisher.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/monitor_runner.rb, | lib/arborist/node.rb, lib/arborist/observer/summarize.rb, | lib/arborist/observer_runner.rb, lib/arborist/tree_api.rb, | spec/arborist/client_spec.rb, spec/arborist/event_api_spec.rb, | spec/arborist/manager/event_publisher_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/monitor_runner_spec.rb, | spec/arborist/observer_runner_spec.rb, | spec/arborist/tree_api_spec.rb, spec/arborist_spec.rb, | spec/spec_helper.rb: | Convert to CZTop for ZeroMQ | [ba88a77e486e] | 2017-05-10 Michael Granger o * Merged with dc93f075ae71 |\ [a8ed641362ad] | | | o * TODO.md: | | Add an idea to the README (thanks to Will at LAIKA) | | [ae1fceba4e10] | | 2017-03-09 Mahlon E. Smith o | * lib/arborist/mixins.rb, lib/arborist/node.rb: |/ Re-arrange constants to avoid Ruby 2.4 refinement warnings. Lower | debug output when loading nodes. | [dc93f075ae71] | 2017-03-01 Michael Granger o * .hoerc, arborist.gemspec, lib/arborist/client.rb, | lib/arborist/command/client.rb: | Fix the signature of Arborist::Client#fetch | | It was defaulting trailing-hash arguments to options, which made the | typical case of fetching with only criteria awkward. This makes the | atypical case (fetching with options but empty criteria) the awkward | case instead. | [c7e85586243e] | 2017-02-19 Mahlon E. Smith o * .ruby-gemset, .ruby-version, .rvmrc, Rakefile: | Convert to .ruby-* files. Bump msgpack dependency. | [b0cead421802] | 2017-01-02 Michael Granger o * .hgignore, Rakefile: | Remove guard against public release, ignore pkg dir | [4e6a4471c246] | o * .hgtags: | Added tag v0.1.0 for changeset 859b70361b14 | [83809e3f33bc] | o * .hgsigs: | Added signature for changeset 02a11882f53b | [859b70361b14] [v0.1.0] | o * History.md, lib/arborist.rb: | Set the minor version, update history file. | [02a11882f53b] | o * TODO.md, lib/arborist/monitor.rb, lib/arborist/monitor_runner.rb, | spec/arborist/monitor_runner_spec.rb, spec/arborist/monitor_spec.rb: | Fix the DSL constructor, set the monitor key in the correct place in | the node data. | [e12d602bcf1a] | 2016-12-28 Michael Granger o * Monitors.md, lib/arborist/monitor_runner.rb, lib/arborist/node.rb, | spec/arborist/node_spec.rb: | Add `key` to the monitor docs, use a prefixed key for monitor | updates. | [7119b40e002a] | o * arborist.gemspec, lib/arborist/command/watch.rb, | lib/arborist/monitor.rb, lib/arborist/monitor_runner.rb, | lib/arborist/node.rb, spec/arborist/event/node_down_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/monitor_runner_spec.rb, | spec/arborist/monitor_spec.rb, spec/arborist/node_spec.rb: | Add a key attribute to monitors for error grouping. | [aebc20335e43] | o * .gems, Rakefile: | Update to latest *ability | [09438b7a8aff] | 2016-10-19 Michael Granger o * lib/arborist/client.rb: | Use ** instead of * for client methods that take keyword args | [73b6f150a8c1] | o * lib/arborist/mixins.rb, lib/arborist/node.rb, | spec/arborist/client_spec.rb: | Add specs for Client#ack and #unack | [819556c743c6] | 2016-10-17 Michael Granger o * TODO.md: | Add a note to the TODO list | [3de683ee0405] | 2016-10-12 Michael Granger o * spec/arborist/node_spec.rb: | Remove accidentally-commited focus | [d2cac6a84aaa] | 2016-10-12 Mahlon E. Smith o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Add matching for 'parent' attribute data. | [c50907900b60] | 2016-10-06 Mahlon E. Smith o * lib/arborist/manager.rb, lib/arborist/monitor.rb, | lib/arborist/node.rb, spec/arborist/monitor_spec.rb, | spec/arborist/node_spec.rb: | Make monitors automatically set #include_down if matching on an | unreachable status type. | | - Add reachable? and unreachable? predacates to node | - Whitespace fixes | [3dcff4c89426] | 2016-10-05 Mahlon E. Smith o * lib/arborist/node.rb: | Reenable event publishing from handle_event(). | [1918cc1afa1a] | 2016-10-05 Michael Granger o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Fix event broadcasting for deep hierarchies. | | - Refactored event broadcasting so #update and #handle_event share | broadcasting code. | [9ab8636bb2c5] | o * Rakefile, arborist.gemspec: | Update gemspec with Ruby requirements | [8ea4314d4dc9] | 2016-10-04 Mahlon E. Smith o * lib/arborist/node.rb: | State transition cleanup: Only nodes in a 'down' state can | transition to 'acked'. | [eed40468bb5e] | 2016-10-03 Mahlon E. Smith o * lib/arborist/command/config.rb: | Require the manager when generating a default configuration file. | [d0c5ef20e6fd] | 2016-09-28 Michael Granger o * TODO.md, lib/arborist/node.rb, spec/arborist/node_spec.rb: | Fix the unknown => disabled transition when updating with an ACK | [30d2548e1308] | o * lib/arborist/manager.rb, spec/arborist/manager_spec.rb: | Flatten the config into one namespace | | This fixes the manager's defaults, which were never actually used. | [ae18e761d06f] | 2016-09-21 Michael Granger o * TODO.md, lib/arborist/manager.rb, lib/arborist/node.rb, | spec/arborist/node_spec.rb: | Fix consequential event propagation/publication | [cdf3fb9d63c8] | o * lib/arborist/dependency.rb, spec/arborist/dependency_spec.rb: | Clarify dependency "down reason" to not seem like a node state | [1f8f703940cb] | o * lib/arborist/manager/tree_api.rb: | Stripped spammier debugging | [dc594799b7dc] | o * Events.md: | Add description of event movement to Events.md | [bfee2016aa79] | 2016-09-21 Mahlon E. Smith o * .rvmrc, lib/arborist/node.rb: | Add an event handler for disabled events, so nodes are properly | quieted when their secondary dependencies are disabled. | [d032e1820965] | 2016-09-06 Michael Granger o * arborist.gemspec, lib/arborist/monitor/socket.rb, | spec/arborist/monitor/socket_spec.rb: | Fix up the specs for getpeername socket monitor change | [f8c5bbc611b2] | o * lib/arborist/monitor/socket.rb: | Make socket check use getpeername for testing non-blocking connect | [9715a6d9903f] | 2016-08-31 Michael Granger o * Protocol.md, TODO.md, lib/arborist/client.rb, lib/arborist/event.rb, | lib/arborist/event/node.rb, lib/arborist/event/node_delta.rb, | lib/arborist/manager.rb, lib/arborist/manager/tree_api.rb, | lib/arborist/monitor.rb, lib/arborist/monitor/socket.rb, | lib/arborist/node.rb, lib/arborist/observer.rb, | lib/arborist/subscription.rb, | spec/arborist/event/node_delta_spec.rb, | spec/arborist/event/node_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/observer_spec.rb, spec/arborist/subscription_spec.rb: | Add exclusion to subscriptions | [23b84af1ebb4] | o * arborist.gemspec, lib/arborist/manager/tree_api.rb, | lib/arborist/monitor/socket.rb, lib/arborist/node.rb, | spec/arborist/manager/tree_api_spec.rb: | Include all operational values in fetched nodes. | | Also error more gracefully about non-eachable updates. | [a72fc8d43adc] | o * lib/arborist/client.rb: | Rearrange some methods in the client | [106b17e27a3a] | 2016-08-29 Michael Granger o * Rakefile, arborist.gemspec, certs/ged.pem: | Add public cert | [a7c6232586ad] | o * Manifest.txt, arborist.gemspec: | Update the manifest with spec changes, rebuild gemspec. | [aec9f5ec88de] | o * spec/data/nodes/duir.rb: |\ Merge with a5a6e5092024 | | [c961355d10c8] | | 2016-08-03 Michael Granger | o * lib/arborist/event/sys_node_added.rb, | | lib/arborist/event/sys_node_removed.rb, | | lib/arborist/event/sys_reloaded.rb, | | lib/arborist/event/sys_shutdown.rb: | | Remove system event node classes | | [a34a23ef095e] | | 2016-08-29 Mahlon E. Smith o | * lib/arborist/loader/file.rb, spec/data/nodes/duir.rb, |/ spec/data/nodes/sub/duir.rb: | Fix the file loader so it correctly crawls subdirectories. | [a5a6e5092024] | 2016-08-02 Michael Granger o * Manifest.txt, TODO.md, lib/arborist/mixins.rb, | lib/arborist/monitor.rb, lib/arborist/monitor_runner.rb, | lib/arborist/node.rb, lib/arborist/node/host.rb, | lib/arborist/node/service.rb, spec/arborist/node/service_spec.rb, | spec/arborist/node_spec.rb, spec/arborist/subscription_spec.rb: | - Update the TO-DO list | - Factor out some network functions into a common mixin | - Add Arborist::Monitor#inspect | - Restore ack+status of serialized nodes | - Allow services to set their own address when not bound to INADDR_ANY | - Finish separating node events from system events | [f853508dba8c] | o * lib/arborist/monitor/socket.rb: | Fix race to calculate select timeout in socket monitor | [56a6dd2a8e40] | 2016-07-20 Michael Granger o * TODO.md: | Update the To-Do file | [53ca09b4d50e] | 2016-07-20 Mahlon E. Smith o * lib/arborist/node/resource.rb, spec/arborist/node/resource_spec.rb: | Add a `category` attribute to the resource node type. | [ae3aa8435e15] | 2016-07-20 Michael Granger o * .gems, .tm_properties, Events.md, TODO.md, arborist.gemspec, | lib/arborist.rb, lib/arborist/command/watch.rb, | lib/arborist/event/sys_shutdown.rb, lib/arborist/manager.rb, | lib/arborist/manager/event_publisher.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/node.rb, | lib/arborist/observer_runner.rb, spec/arborist/client_spec.rb, | spec/arborist/manager/event_publisher_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, | spec/arborist/observer_runner_spec.rb, spec/spec_helper.rb: | Send system events from the manager for status changes | [4cc9924e6b0c] | 2016-06-15 Michael Granger o * spec/arborist/observer_spec.rb, spec/data/observers/auditor.rb: | Fix signature of observer actions in specs | [196443e52d87] | o * lib/arborist/node.rb, lib/arborist/node/host.rb, | spec/arborist/node_spec.rb: | Add a config hash to node operational metadata | [196223da8ba4] | 2016-05-19 Mahlon E. Smith o * lib/arborist/node/resource.rb, spec/arborist/node/resource_spec.rb: | Resource nodes should also inherit addressing from their parent | hosts (as service nodes do). | | This gives resource monitors a path to gathering information -- an | obvious example being load or disk checks over SNMP. Something that | isn't a service with a protocol and port, but a necessary piece of | information for overall host and service health, that should be | monitored (and potentially ack'ed/disabled) independently. | [b4324ab8853e] | 2016-05-18 Mahlon E. Smith o * lib/arborist/cli.rb: | Remove the default log level from the arborist command line client. | [39338420aaa0] | 2016-05-04 Michael Granger o * Protocol.md, README.md, lib/arborist/dependency.rb, | lib/arborist/node.rb, spec/arborist/dependency_spec.rb, | spec/arborist/node_spec.rb: | Fix the way nodes' dependency state is restored | [325443abe6df] | 2016-04-27 Michael Granger o * README.md: | Remove the link to the "tutorial" until there is one | [650c1e0a0628] | o * lib/arborist/client.rb, spec/arborist/client_spec.rb: | Add fetch with depth to the client | [96b36155fad0] | 2016-04-20 Michael Granger o * arborist.gemspec: | Update the gemspec | [1cd5199203f9] | o * lib/arborist/command/start.rb: | Don't default to profiling the start command | [8f480f46c441] | o * Manifest.txt, lib/arborist/node/resource.rb, | spec/arborist/node/resource_spec.rb, | spec/arborist/node/service_spec.rb: | Add a `resource` host subnode type. | [880c4d370508] | o * Protocol.md, TODO.md, lib/arborist/manager.rb, | lib/arborist/manager/tree_api.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb: | Add a depth argument to the tree API "list" command. | [e319210e26cb] | o * lib/arborist/monitor/socket.rb: | Use an empty string for the send in the UDP socket monitor | [4a43736bba05] | o * Manifest.txt: | Update the manifest | [15f5c789b17c] | o * spec/arborist/event/node_spec.rb: | Add specs for the node event base class | [d9b8715427c3] | o * spec/data/observers/webservices.rb: | Fix the observer setup in spec data | [a990ba28f0a8] | o * lib/arborist/monitor/socket.rb: | Add a to-do comment for a race condition | [7aab38ffd06a] | 2016-04-18 Michael Granger o * lib/arborist/cli.rb, lib/arborist/command/start.rb: | Add profiling to the `start` command, clean up cli code a bit | [7117040136c4] | 2016-04-18 Mahlon E. Smith o * TODO.md: | Update TODO with some additional ideas. | [f81ee9253773] | 2016-04-14 Mahlon E. Smith o * lib/arborist/monitor/socket.rb, lib/arborist/node.rb: | Checkpoint commit. | | - Add UDP checking, based on the TCP checker. | - Fix logging for quieted nodes. | - Start updating the status_changed node attribute on status | transitions. | [527fafd7c668] | o * TODO.md: | Add a quick blurb to the TODO. | [6f93cc30a5e1] | 2016-04-14 Michael Granger o * .hgignore, .hoerc, lib/arborist/monitor_runner.rb, | spec/arborist/manager_spec.rb: | Fix the monitor running after adding negative criteria. | [46d6c436174c] | 2016-04-13 Michael Granger o * lib/arborist/client.rb, lib/arborist/event/node.rb, | lib/arborist/manager.rb, lib/arborist/manager/tree_api.rb, | lib/arborist/monitor_runner.rb, spec/arborist/client_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb: | Implement exclude for node matching/monitors | [99d5e31791a3] | o * lib/arborist/monitor.rb, spec/arborist/monitor_spec.rb: | Handle system call errors while running the monitor command | [b4ca615e0b32] | o * lib/arborist/node.rb, lib/arborist/node/ack.rb, | spec/arborist/node/ack_spec.rb: | Fix the status description during state changes with ack set. | [40c91d7c3131] | o * Manifest.txt, TODO.md, arborist.gemspec, lib/arborist/node.rb, | lib/arborist/node/ack.rb, spec/arborist/node/ack_spec.rb: | Break node acks out into a class, fix serialization issues | [d9d01450a189] | o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Fix node ack-clearing | [b6694a5b8368] | 2016-04-12 Mahlon E. Smith o * lib/arborist/client.rb: | Add acknowledgement helpers for Arborist::Client. | [98dae44fa322] | 2016-04-11 Michael Granger o * Manifest.txt, lib/arborist/event/node_delta.rb, | lib/arborist/node/host.rb, spec/arborist/node_spec.rb: | Add an override to node.delta events | | The change to include node attributes in all `node.*` events broke | the delta event, and changed what the `node.ack` events look like. | | This fixes `node.delta` events to look like they did before (only | including the diff in their payload), and updates the specs for the | `node.ack` event to expect the new-style payload. | [af21efce26e3] | o * .tm_properties, lib/arborist/event/node.rb, | lib/arborist/event/node_update.rb, | spec/arborist/event/node_down_spec.rb, | spec/arborist/event/node_update_spec.rb: | Include node payload in all node events | [8257c7337a2b] | o * TODO.md: | Update TODO | [fca1215eee50] | o * lib/arborist/manager/tree_api.rb: | Log client api commands at debug instead of info | [a497308b8723] | 2016-04-06 Michael Granger o * TODO.md, lib/arborist/manager.rb, lib/arborist/node.rb, | spec/arborist/manager_spec.rb: | Don't cross quieted nodes in default traversal | [92756b2da807] | o * TODO.md: | Update TO DO list | [7a24db395228] | o * lib/arborist/node.rb: | Don't log dependency state on every node.up event | [8585c6dd3240] | o * lib/arborist/node/service.rb: | Don't restore addresses for marshalled services | [1665d36ffadd] | o * lib/arborist/cli.rb: | Fix logging in the cli | [25e09c2f43a9] | o * Manifest.txt, Nodes.md, TODO.md, arborist.gemspec, lib/arborist.rb, | lib/arborist/cli.rb, lib/arborist/command/client.rb, | lib/arborist/command/start.rb, lib/arborist/dependency.rb, | lib/arborist/event.rb, lib/arborist/event/node.rb, | lib/arborist/event/node_acked.rb, lib/arborist/event/node_delta.rb, | lib/arborist/event/node_disabled.rb, | lib/arborist/event/node_down.rb, | lib/arborist/event/node_matching.rb, | lib/arborist/event/node_quieted.rb, | lib/arborist/event/node_unknown.rb, lib/arborist/event/node_up.rb, | lib/arborist/event/node_update.rb, | lib/arborist/event/sys_node_added.rb, | lib/arborist/event/sys_node_removed.rb, lib/arborist/exceptions.rb, | lib/arborist/manager.rb, lib/arborist/manager/event_publisher.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/node.rb, | lib/arborist/node/host.rb, lib/arborist/node/service.rb, | lib/arborist/subscription.rb, spec/arborist/dependency_spec.rb, | spec/arborist/event/node_delta_spec.rb, | spec/arborist/event/node_update_spec.rb, | spec/arborist/event_spec.rb, spec/arborist/manager_spec.rb, | spec/arborist/monitor_spec.rb, spec/arborist/node/host_spec.rb, | spec/arborist/node/service_spec.rb, spec/arborist/node_spec.rb, | spec/arborist/subscription_spec.rb: | Add ability to express secondary dependencies | * * * Experimental sexps using a Struct | [ed4f0655b4b6] | 2016-03-02 Michael Granger o * TODO.md: | Update the to-do list | [5ff19d1aefbd] | o * arborist.gemspec, lib/arborist/cli.rb, lib/arborist/event.rb, | lib/arborist/event/node_delta.rb, lib/arborist/mixins.rb, | lib/arborist/node.rb, spec/arborist/event/node_delta_spec.rb: | Fix matching for node delta events | [c3ad32bd54a2] | o * lib/arborist/manager.rb: | Remove unused Manager constant | [8079f5cdaecb] | o * .hoerc: | Don't include state files in the manifest | [72aa5a4204b5] | o * .hgignore, lib/arborist.rb, lib/arborist/manager.rb, | lib/arborist/node.rb, lib/arborist/node/root.rb, | spec/arborist/manager_spec.rb, spec/arborist/node_spec.rb: | Save and restore tree state across restarts | * * * fold this | [f002d3b7cb8b] | 2016-02-24 Michael Granger o * TODO.md: | Update the TODO list | [47ef6bc4fe24] | 2016-02-22 Michael Granger o * TODO.md, lib/arborist/client.rb, lib/arborist/manager/tree_api.rb, | spec/arborist/client_spec.rb, | spec/arborist/manager/tree_api_spec.rb: | Add MODIFY to the tree api/client. | [6cfcaabc4a68] | o * lib/arborist/node.rb, spec/arborist/node_spec.rb: | Fix Node tags modification | [7ede931a8214] | 2016-02-10 Michael Granger o * TODO.md, lib/arborist/client.rb, lib/arborist/exceptions.rb, | lib/arborist/manager.rb, lib/arborist/manager/tree_api.rb, | lib/arborist/node.rb, lib/arborist/node/host.rb, | lib/arborist/node/service.rb, spec/arborist/client_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/node/service_spec.rb, | spec/arborist_spec.rb, spec/spec_helper.rb: | Added GRAFT to the tree API | [9c41353696cb] | o * Protocol.md, TODO.md, lib/arborist/client.rb, | lib/arborist/manager/tree_api.rb, spec/arborist/client_spec.rb, | spec/arborist/manager/tree_api_spec.rb: | Added PRUNE to the tree API. | [43af5daf67a7] | o * TODO.md: | Updated the TODO list | [b30a77db11dd] | o * LICENSE, Manifest.txt, Rakefile, arborist.gemspec: | Build system cleanup | [5fe75989da8e] | 2016-02-08 Michael Granger o * lib/arborist.rb, lib/arborist/monitor.rb, lib/arborist/node.rb, | lib/arborist/node/host.rb, lib/arborist/node/service.rb, | lib/arborist/observer.rb, spec/arborist/node/host_spec.rb, | spec/arborist/node_spec.rb, spec/spec_helper.rb: | Add subnode declarations and add the infrastructure for graft/modify | [bfcbe35fc82f] | 2016-02-03 Michael Granger o * TODO.md: | Add some more stuff to the TODO doc | [593114f4d409] | o * Protocol.md: | Add the node operations to the Protocol doc | [250d32bc3eb6] | o * Merge with 84af7642624c |\ [d795d8884afa] | | | o * lib/arborist/node.rb: | | Add API docs for the state_machines generated methods | | [00d6b23ff90a] | | 2016-02-02 Mahlon E. Smith o | * .gems, Rakefile, arborist.gemspec: | | oop, highline also needs to be a dependency. | | [84af7642624c] | | o | * .gems, Rakefile: |/ Add GLI dependency. | [d73277230ec2] | 2016-01-28 Michael Granger o * README.md, Rakefile, arborist.gemspec: | Fix the link list in the README, 'docs' rake target. | [6479be826ccc] | o * Manifest.txt, README.md, Tutorial.md: | Update the README and add a stub for the Tutorial mentioned in it. | [f020438be6d9] | o * spec/arborist/client_spec.rb, spec/spec_helper.rb: | Skip the spec that requires the ZMQ workaround under CI | | - The ZMQ registration bug workaround never works in Semaphore's | environment, so just skip that spec there. | [3ec418f69498] | o * Manifest.txt, lib/arborist/cli.rb, spec/arborist_spec.rb: | Fix leaking the root node singleton between specs. | | - Also silences some noisy logging from the config specs. | [570a00a9311d] | o * lib/arborist.rb, lib/arborist/node.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/monitor_spec.rb, spec/arborist_spec.rb, | spec/spec_helper.rb: | Fix some specs; still an order-dependent failure for seed 46570 | [e23d2b9f8f31] | o * bin/amanagerd, bin/amonitord, bin/aobserverd, bin/arborist, | lib/arborist/cli.rb, lib/arborist/client.rb, | lib/arborist/command/client.rb, lib/arborist/command/config.rb, | lib/arborist/command/start.rb, lib/arborist/command/watch.rb, | lib/arborist/event/node_matching.rb, lib/arborist/observer.rb, | spec/data/monitors/pings.rb: | Add a CLI and consolidate daemons into a "start" command | [8180949a5e2c] | o * lib/arborist.rb, lib/arborist/loader.rb, | lib/arborist/loader/file.rb, lib/arborist/manager.rb, | lib/arborist/monitor.rb, lib/arborist/node.rb, | lib/arborist/observer.rb: | Add a loader-plugin system instead of assuming files | [6871a50affeb] | 2016-01-20 Michael Granger o * lib/arborist/node.rb: | Whitespace fix | [4ad9a2f6dd09] | o * spec/arborist/node_spec.rb, spec/data/monitors/port_checks.rb: | Remove a note from the port checks example after discussion | [e41ae3591da2] | o * TODO.md: | Add some more TODO stuff | [cf1ef68d637d] | o * Rakefile: | Fix license copypasta in the Rakefile | [83ab92cd92b1] | o * TODO.md, arborist.gemspec, lib/arborist/manager.rb, | lib/arborist/node.rb, spec/arborist/manager_spec.rb, | spec/arborist/node_spec.rb: | Add 'disabled' node state. | [747e81edf7e4] | o * .hgignore, Rakefile, arborist.gemspec, lib/arborist/node/service.rb: | Updates for the gem build. | [de06b562b8bd] | 2015-12-31 Michael Granger o * alerts/host_down.rb, images/Leaf.sketch, monitoring_featureset.txt: | Removing some miscellanous files | [a2f8b47a4b2a] | 2015-12-30 Michael Granger o * .gems, .hoerc, Manifest.txt, Observers.md, Rakefile, | arborist.gemspec, lib/arborist/observer/action.rb, | lib/arborist/observer/summarize.rb, | spec/arborist/observer/summarize_spec.rb: | Add scheduling to observers. | [55599200bf56] | 2015-12-16 Michael Granger o * Observers.md, bin/amonitord, bin/aobserverd, | lib/arborist/observer.rb, lib/arborist/observer/action.rb, | lib/arborist/observer/summarize.rb, lib/arborist/observer_runner.rb, | spec/arborist/observer/action_spec.rb, | spec/arborist/observer/summarize_spec.rb, | spec/arborist/observer_spec.rb, spec/data/observers/auditor.rb: | Add Observer#summarize actions | * * * Hook Action and Summary into Observers | [335823f98550] | 2015-12-14 Michael Granger o * lib/arborist/manager/event_publisher.rb: | Break the #register retry loop | [d784b06e615d] | 2015-12-11 Michael Granger o * .hgignore, Observers.md, Protocol.md, TODO.md, | lib/arborist/manager.rb, lib/arborist/observer.rb, | lib/arborist/observer/action.rb, lib/arborist/observer_runner.rb, | spec/arborist/observer/action_spec.rb: | Implement count and time thresholds on Observer actions | [88e5b037232f] | 2015-12-09 Michael Granger o * Observers.md, bin/aobserverd, lib/arborist.rb, | lib/arborist/client.rb, lib/arborist/event.rb, | lib/arborist/event/node_acked.rb, lib/arborist/event/node_delta.rb, | lib/arborist/event/node_matching.rb, | lib/arborist/event/node_update.rb, lib/arborist/manager.rb, | lib/arborist/manager/event_publisher.rb, | lib/arborist/monitor/socket.rb, lib/arborist/node.rb, | lib/arborist/node/service.rb, lib/arborist/observer.rb, | lib/arborist/observer_runner.rb, lib/arborist/subscription.rb, | spec/arborist/client_spec.rb, | spec/arborist/event/node_update_spec.rb, | spec/arborist/event_spec.rb, | spec/arborist/manager/event_publisher_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/observer_spec.rb, | spec/arborist/subscription_spec.rb, spec/data/nodes/localhost.rb, | spec/data/observers/auditor.rb, spec/data/observers/webservices.rb, | spec/spec_helper.rb: | Add Observer class | * * * Refactor publication responsibility into Subscription | [fddcbace9b6d] | 2015-12-07 Michael Granger o * lib/arborist/node.rb: | Allow single filename arguments to Node.each_in as with Monitor et. | al. | [b675468ea2d3] | o * lib/arborist/monitor.rb: | Fix a constant name in monitor.rb. | [3fc70d8200e5] | o * lib/arborist/monitor/socket.rb, | spec/arborist/monitor/socket_spec.rb: | Fix the update data and error handling in the socket monitor | [a552217db04b] | 2015-12-05 Michael Granger o * lib/arborist/monitor/socket.rb, | spec/arborist/monitor/socket_spec.rb, | spec/data/monitors/port_checks.rb: | Add initial TCP socket monitor logic class | [a93e4f9cc81c] | 2015-12-03 Michael Granger o * lib/arborist/node.rb, lib/arborist/node/host.rb, | lib/arborist/node/service.rb, spec/arborist/node/host_spec.rb, | spec/arborist/node/service_spec.rb, spec/arborist/node_spec.rb, | spec/spec_helper.rb: | Fix some node filtering issues and improve Node#inspect | [9f03e5ab6b67] | o * lib/arborist/mixins.rb, spec/arborist/mixins_spec.rb: | Add future? and past? to TimeRefinements | [5395744f5005] | 2015-12-02 Michael Granger o * Monitors.md, lib/arborist/monitor.rb, spec/arborist/monitor_spec.rb: | Make Monitor#exec accept any object that implements #run | [38cf9a76d080] | o * .hgignore, Monitors.md, lib/arborist/monitor.rb, | spec/arborist/monitor_spec.rb: | Allow monitor exec to take a Module too | [f9b1e2534a0b] | 2015-11-16 Michael Granger o * .gems, .tm_properties, Monitors.md, Protocol.md, bin/amonitord, | experiments/modcontext-instance-eval.rb, experiments/pipe-cat.rb, | lib/arborist/client.rb, lib/arborist/monitor.rb, | spec/arborist/manager_spec.rb, spec/arborist/monitor_spec.rb, | spec/data/monitors/pings.rb, spec/data/monitors/web_services.rb, | spec/spec_helper.rb: | Rewrote monitor strategy | [1c67662ec4f3] | 2015-10-14 Michael Granger o * .gems, Monitors.md, Protocol.md, lib/arborist/manager.rb, | lib/arborist/monitor.rb, spec/data/monitors/pings.rb, | spec/data/observers/webservices.rb: | Change the execution strategy used for monitors/observers. | | Update docs/examples with the new mechanism | [979179fac69a] | 2015-10-07 Mahlon E. Smith o * .gems, Rakefile, experiments/arborist.schema, experiments/nodes- | from-ldap.rb, lib/arborist/manager.rb: | Checkpoint a LDAP sourced node builder. | [0bdf779138c4] | 2015-09-10 Michael Granger o * lib/arborist/node.rb, spec/arborist_spec.rb, spec/spec_helper.rb: | Only use the `spec/data/nodes` directory for loading test nodes | [43882cef9f1f] | 2015-09-09 Michael Granger o * Observers.md, lib/arborist/client.rb, lib/arborist/event.rb, | lib/arborist/event/sys_reloaded.rb, lib/arborist/manager.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/node.rb, | lib/arborist/subscription.rb, spec/arborist/client_spec.rb, | spec/arborist/event_spec.rb, spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/node_spec.rb, | spec/arborist/subscription_spec.rb, spec/data/nodes/sidonie.rb, | spec/data/observers/webservices.rb: | Checkpoint commit | [2e629096ee55] | 2015-08-20 Michael Granger o * Rakefile, arborist.gemspec: | Add missing author to the gemspec. | [013f9be18f9f] | o * Events.md, Manifest.txt, Observers.md, Rakefile, arborist.gemspec, | lib/arborist.rb, lib/arborist/event.rb, | lib/arborist/event/node_acked.rb, lib/arborist/event/node_delta.rb, | lib/arborist/event/node_update.rb, lib/arborist/manager.rb, | lib/arborist/manager/event_publisher.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/node.rb, | lib/arborist/node/root.rb, lib/arborist/subscription.rb, | spec/arborist/event/node_update_spec.rb, | spec/arborist/event_spec.rb, | spec/arborist/manager/event_publisher_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/node/root_spec.rb, | spec/arborist/node_spec.rb, spec/arborist/subscription_spec.rb, | spec/spec_helper.rb: | Add basic subscriptions, flesh out events. | [6c8636097d37] | 2015-07-20 Michael Granger o * Events.md, Manifest.txt, Observers.md, lib/arborist.rb, | lib/arborist/event.rb, lib/arborist/manager.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/node.rb, | spec/arborist/client_spec.rb, | spec/arborist/manager/event_publisher_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/node_spec.rb: | Start work on adding node update events | | - Simplify event class (no need for pluggability yet) | - Refactor some of the tree API code with too much intimate knowledge | of the manager and nodes up into the manager. This is also how the | manager will be able to do event propagation from Tree API calls. | - Add event-generation to Node#update. | - Make the Tree API fetch always return Hash values for consistency | [af63d56deafa] | 2015-07-15 Michael Granger o * lib/arborist.rb, lib/arborist/manager.rb, | spec/arborist/client_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/monitor_runner_spec.rb, | spec/arborist_spec.rb: | Fix a spec problem with trying to use two ZMQ contexts | [ee2875d38797] | 2015-07-08 Michael Granger o * Manifest.txt, bin/amonitord, lib/arborist.rb, | lib/arborist/monitor_runner.rb, monitors/pings.rb, | monitors/system_resources.rb, monitors/web_services.rb, | spec/arborist/manager_spec.rb, spec/arborist/monitor_runner_spec.rb, | spec/arborist_spec.rb, spec/data/monitors/pings.rb, | spec/data/monitors/system_resources.rb, | spec/data/monitors/web_services.rb: | Add a monitor runner. | [cd9a1a9cb61a] | 2015-07-06 Michael Granger o * monitors/pings.rb: | Only ping "down" nodes from the downed host pinger | [874a2816d0d5] | 2015-07-03 Michael Granger o * spec/data/nodes/duir.rb: | Make the testing data work on hosts with no 'nat-pmp' /etc/services | entry. | [25bdee773318] | o * Rakefile, arborist.gemspec, bin/amanagerd: | Add timecop developer dep | [682cf0904237] | o * Rakefile, arborist.gemspec: | Fix rbczmq version. | [337d4ddc2c41] | o * Rakefile, arborist.gemspec: | Fix deps: add rbczmq, remove rgl. | [00aed09c231c] | o * Manifest.txt, Nodes.md, arborist.gemspec: | Update manifest, gemspec. | [905f639ef8c2] | o * Rakefile: | Rebuild the gemspec before checkin | [6ac865dc47c1] | 2015-07-02 Michael Granger o * experiments/run_monitors.rb, lib/arborist.rb, | lib/arborist/client.rb, lib/arborist/node.rb, | lib/arborist/node/host.rb, lib/arborist/node/root.rb, | spec/arborist/client_spec.rb: | Add a spike of a ZMQ::Loop-based monitor runner. | [c32fc2af7e33] | o * lib/arborist/manager.rb, lib/arborist/manager/event_publisher.rb, | spec/arborist/manager/event_publisher_spec.rb: | Add registration/deregistration for event publisher to avoid | spinning. | [fd304df012d4] | o * Monitors.md, lib/arborist/monitor.rb, monitors/pings.rb, | monitors/system_resources.rb, monitors/web_services.rb, | spec/arborist/monitor_spec.rb: | Add initial implementation of the monitor class. | [9fe5a028d82a] | 2015-07-01 Michael Granger o * experiments/fping_wrapper.sh, experiments/fping_wrapper_data.txt: | Adding experimental fping shell wrapper | [97321e2a97fd] | 2015-06-19 Michael Granger o * README.md: | Fix spelling of the project in the README. | [f0ffaa9a81b8] | 2015-06-18 Michael Granger o * Monitors.md, Protocol.md: | Renamed Monitors.md to Protocol.md | [05ab00e422c5] | 2015-06-17 Michael Granger o * bin/amanagerd, experiments/make_dot.rb, lib/arborist.rb, | lib/arborist/client.rb, lib/arborist/manager.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/mixins.rb, | lib/arborist/node.rb, lib/arborist/node/host.rb, | lib/arborist/node/service.rb, spec/arborist/client_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/node_spec.rb, | spec/spec_helper.rb: | Finish up work on the Tree API, add a simple client class | [6e4b8b2e9692] | o * Monitors.md, lib/arborist/manager.rb, | lib/arborist/manager/event_publisher.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/mixins.rb, | lib/arborist/node.rb, lib/arborist/node/host.rb, | lib/arborist/node/service.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/node/service_spec.rb, | spec/arborist/node_spec.rb, spec/data/nodes/sidonie.rb, | spec/data/nodes/yevaud.rb: | Checkpoint commit | [53f8c46273b7] | 2015-05-28 Michael Granger o * .tm_properties, lib/arborist/manager.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/node.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb: | Checkpoint of work from Wednesday | [c17020a7fb2a] | 2015-05-27 Mahlon E. Smith o * .gems, experiments/make_dot.rb: | Add some dependencies to the .gems file. Add a simplistic .dot | generator. | [3e66ce756411] | 2015-05-25 Michael Granger o * .gems, .hgignore, Manifest.txt, Monitors.md, Observers.md, Rakefile, | experiments/manager-sockets.rb, experiments/yay-client.rb, | lib/arborist.rb, lib/arborist/exceptions.rb, | lib/arborist/manager.rb, lib/arborist/manager/event_publisher.rb, | lib/arborist/manager/tree_api.rb, lib/arborist/node/host.rb, | lib/arborist/node/service.rb, lib/arborist/node/webservice.rb, | spec/arborist/manager/event_publisher_spec.rb, | spec/arborist/manager/tree_api_spec.rb, | spec/arborist/manager_spec.rb, spec/arborist/node/service_spec.rb, | spec/arborist_spec.rb, spec/data/nodes/duir.rb, | spec/data/nodes/sidonie.rb, spec/data/nodes/test1.rb, | spec/data/nodes/yevaud.rb, spec/spec_helper.rb, tree/duir.rb, | tree/sidonie.rb, tree/yevaud.rb: | Start implementing the Tree API | | - Document the protocol | - Start specs for the API handler. | - Add MessagePack lib dependency | - Add manager server stuff (startup, shutdown, signal-handling, etc.) | - Resolve some problems with the Service node type. | [c6fb156530cc] | 2015-05-06 Michael Granger o * ChangeLog, Manifest.txt, Monitors.md, experiments/monitor-client.rb, | experiments/monitor-service.rb, lib/arborist.rb, | lib/arborist/mixins.rb, lib/arborist/node.rb, | lib/arborist/node/host.rb, lib/arborist/node/service.rb, | monitors/pings.rb, spec/arborist/node/host_spec.rb, | spec/arborist/node/root_spec.rb, spec/arborist/node/service_spec.rb, | spec/arborist/node_spec.rb, spec/arborist_spec.rb: | Checkpoint of work from today and last week. | | - Added acknowlegements to Arborist::Node | - Fixed address code for host nodes, port code for service nodes. | - Better spec coverage all around. | [c94494647182] | 2015-04-22 Michael Granger o * .pryrc: | Load all node types in .pryrc | [7366a03c490e] | o * lib/arborist.rb: | Fix a bug in `Arborist.manager_for` | [4c9abee5b344] | o * lib/arborist/node.rb, lib/arborist/node/webservice.rb, | spec/arborist/node_spec.rb: | Add properties/status API to Arborist::Node. | [98f3f332b5a3] | o * experiments/monitor-client.rb, experiments/monitor-service.rb: | Add spike of REQ/REP socket use | [0126d248b0f6] | 2015-04-15 Michael Granger o * .tm_properties, Monitors.md, Rakefile, experiments/hash-add.rb, | lib/arborist.rb, lib/arborist/manager.rb, lib/arborist/node.rb, | lib/arborist/node/host.rb, lib/arborist/node/root.rb, | spec/arborist/manager_spec.rb, spec/arborist/node_spec.rb, | spec/data/nodes/test1.rb, spec/spec_helper.rb: | Add basic node graph functionality | [e653b1bafeb7] | 2015-03-22 Michael Granger o * .gems, .pryrc, .rvm.gems, README.md, images/Leaf.sketch, | lib/arborist.rb, lib/arborist/collector.rb, lib/arborist/manager.rb, | lib/arborist/node.rb, lib/arborist/node/host.rb, | spec/arborist/collector_spec.rb, spec/arborist/manager_spec.rb, | tree/duir.rb, tree/sidonie.rb, tree/yevaud.rb: | Snapshot of today's spike work | [203aed65712a] | 2015-03-18 Michael Granger o * .document, .hgignore, .pryrc, .rvm.gems, .rvmrc, .simplecov, ChangeLog, Gemfile, History.md, LICENSE, Manifest.txt, Observers.md, README.md, Rakefile, alerts/host_down.rb, arborist.gemspec, lib/arborist.rb, lib/arborist/collector.rb, lib/arborist/event.rb, lib/arborist/mixins.rb, lib/arborist/node.rb, lib/arborist/node/host.rb, lib/arborist/node/root.rb, lib/arborist/node/service.rb, monitoring_featureset.txt, monitors/pings.rb, monitors/system_resources.rb, monitors/web_services.rb, spec/arborist/collector_spec.rb, spec/arborist/mixins_spec.rb, spec/arborist_spec.rb, spec/spec_helper.rb, tree/duir.rb, tree/sidonie.rb, tree/yevaud.rb: Spikes and notes [0999d72c1a9f]