That way, as the top-level target.Merge(arg) on Report recursively descends into the data structure, all component Merge operations are invoked as target_component.Merge(arg_component). Merge is commutative, so semantically this does not matter. But it is easier to reason about and debug Merge code this way. Moreover, the merge order matters for performance since some merges, in particular LatestMap.Merge, are faster when the entries in the target are younger than the entries in the arg. So this change allows high-level code to invoke Report.Merge in the optimal order, in the knowledge that the order is preserved for component merges. Most of the Merge functions were already preserving order. Of the four that didn't, Nodes.Merge is the most significant - it is the only one that affects LatestMap.Merge order.
Weave Scope - Monitoring, visualisation & management for Docker & Kubernetes
Weave Scope automatically generates a map of your application, enabling you to intuitively understand, monitor, and control your containerized, microservices based application.
Understand your Docker containers in real-time
Choose an overview of your container infrastructure, or focus on a specific microservice. Easily identify and correct issues to ensure the stability and performance of your containerized applications.
Contextual details and deep linking
View contextual metrics, tags and metadata for your containers. Effortlessly navigate between processes inside your container to hosts your containers run on, arranged in expandable, sortable tables. Easily to find the container using the most CPU or memory for a given host or service.
Interact with and manage containers
Interact with your containers directly: pause, restart and stop containers. Launch a command line. All without leaving the scope browser window.
Getting started
sudo curl -L git.io/scope -o /usr/local/bin/scope
sudo chmod a+x /usr/local/bin/scope
scope launch
This script will download and run a recent Scope image from the Docker Hub.
Now, open your web browser to http://localhost:4040. (If you're using
boot2docker, replace localhost with the output of boot2docker ip.)
For instructions on installing Scope on Kubernetes, DCOS or ECS, see the docs.
Getting help
If you have any questions about, feedback for or problem with Scope we invite you to:
- Read the docs.
- join our public slack channel
- send an email to weave-users@weave.works
- file an issue
Your feedback is always welcome!