Giter Club home page Giter Club logo

doggo's Introduction

doggo

๐Ÿ•๐Ÿ”Ž Inspecting big Datadog traces in the CLI

โœˆ๏ธ Moved away!

This project has moved away from Github and is now hosted elsewhere.

Why?

The Datadog trace-viewing UI performance greatly degrades as the number of spans in a single trace increases and within a trace, it is often painful to find the span you are interested in as there is no way to "jump" to a span directly.

This is an attempt at solving that problem: using doggo, you can inspect large trace json blobs and get to the subtree corresponding to spans of interest in a few keystrokes without having to worry about your browser running out of memory. At present, you will have to have the json you want to inspect handy -- the tool simply makes it more palatable.

Installation

Pre-built binaries

Each release includes pre-built binaries, drop those in your path (i.e. in /usr/local/bin) and you are ready to go!

Building your own

You can also clone this repository and go build . to get your own executable.

Usage

To get doggo on your machine, you can grab a pre-compiled release for your machine if one is available or build it locally by cloning the repository and running go build.

You can either include the executable in your $PATH or run the executable wherever it lives:

doggo <path-to-trace-json> <resource-name> [-vv] [--depth={depth-limit}]

The resource-name provided is the resource name associated with the spans that interest you in the provided trace. Doggo will display all the span subtrees up to depth-limit depth (unlimited depth if not specified) that have a resource name that matches your query (either complete or partial).

Default verbosity will include resource names and span duration in millis. Adding -v will toss in some extra information about each resource and -vv will include any metadata (i.e. tagging) that is available in the trace for that span.

Contributing

Doggo welcomes contributions. The main use case is pretty tailored to my day-to-day, but sensible suggested changes are welcome!

doggo's People

Contributors

mcataford avatar

Watchers

 avatar

doggo's Issues

Orphaned spans are not accounted for in the content indexed for searching

Some spans can be included under the orphaned collection (reasons unknown - best guess is Datadog fails to associate them with others properly) and are currently not included in the searchable data. This leads to some queries that should succeed failing instead.

Including the spans under orphaned would address this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.