Typically this means the http caller has closed the connection,
so no point responding to them.
Also check at the point we send a response back, and log to OpenTracing.
The only place Counters are used is in rendering, for the number of
nodes under a topology, so the overhead of holding a unique data
structure in every Node is unwarranted.
Counters are not set in the probe, so we don't need any
backwards-compatibility in report decoding. Similarly they are not set
until after all nodes are merged, so we don't need that logic.
The second half of the render added all the same nodes, except for
those with no Docker image information, so we could show a figure for
those filtered out on that basis.
This just isn't worth the effort.
Dockershim has added a label `io.kubernetes.docker.type` for at least
four years, where the pause container is of type `podsandbox`. This
should be more reliable than trying to keep up with everyone's name
for the pause container.
Instead of a whole extra data structure which is quite expensive to
marshal and unmarshal, just send the information in a string. No
clever merging strategy is required - the states are all set in one
place per node type.
This dependency makes it harder to see the structure of the program,
and sometimes complicates compilation.
Mostly just changing the source of strings that are already exported
from the report package. A few new strings have to be moved there,
plus the function `IsPauseImageName()`.
This covers:
- Implementation of the job resource in probe
- Reporter changes for the job
- Add Describe Control to the job
- Pass job object to the kube controller renderer
ToDo:
- Need to decide the shape for the Job.
Signed-off-by: Satyam Zode <satyamzode@gmail.com>
Read all the PVC source from a pod spec
and add adjacency between the pod and its PVCs.
Signed-off-by: Akash Srivastava <akashsrivastava4927@gmail.com>
- Renames placeholders `:orgId` to `:instanceId` in
`--app.metrics-graph`
- Adjusts frontend client to use the provided instanceId by its host
application (Weave Cloud)
- Name of the PVC can be same in different namespaces, in this
scenario an application pod is connected to multiple PVC.
Signed-off-by: Akash Srivastava <akashsrivastava4927@gmail.com>
This avoids side-effects from reporting Kubernetes from a
cluster-level probe, and removes a lie from the probe data.
Rather than do the work every time the probe sends a report, we do it
every time the app renders endpoints, which should be once per merged
report set.
* Pass Go context down to Renderers
This is useful for cancellation or tracing.
* Add tracing spans to app
Also log things like number of nodes in Map, total number of reports.
- Add a new client in probe/kubernetes/client.go
which will be used to fetch details of Snapshot CRD
- Visualize VolumeSnapshot and VolumeSnapshotData
- Add adjacency between PV and VolumeSnapshot
- Add adjacency between VolumeSnapshot and VolumeSnapshotData
- Add snapshot filter to hide and show snapshots
Signed-off-by: Akash Srivastava <akash.srivastava@openebs.io>