GithubHelp home page GithubHelp logo

zsmj513 / zipkin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from openzipkin/zipkin

0.0 3.0 0.0 9.86 MB

Zipkin is a distributed tracing system

Home Page: http://zipkin.io

License: Apache License 2.0

Shell 0.52% Scala 55.80% Java 6.20% Thrift 2.36% JavaScript 29.62% CSS 3.18% HTML 2.31%

zipkin's Introduction

Gitter chat Build Status Download

Zipkin (doc/zipkin-logo-200x119.jpg)

Zipkin is a distributed tracing system. It helps gather timing data needed to troubleshoot latency problems in microservice architectures. The front end is a "waterfall" style graph of service calls showing call durations as horizontal bars:

Screenshot

Running Zipkin

Zipkin minimally needs a datastore, query and UI server. Some architectures also include a collection tier (ex polling Kafka).

Architecture

If you are familiar with Docker, the quickest way to get started quickly is to use the Docker Zipkin project, which (in addition to being able to build docker images) provides scripts and a docker-compose.yml for launching pre-built images, e.g.

$ git clone https://github.com/openzipkin/docker-zipkin
$ cd docker-zipkin
$ docker-compose up

If you are happy building from source you can use the scripts in the bin directory of this repository.

Here's how to start zipkin using the default file-based backend and view traces.

# get the zipkin source and change to its directory
$ git clone https://github.com/openzipkin/zipkin; cd zipkin
# start the query server in a new terminal session or tab
$ ./bin/query
# start the collector server in a new terminal session or tab
$ ./bin/collector
# start the web server in a new terminal session or tab
$ ./bin/web
# create dummy traces
$ ./bin/tracegen
# open the ui and look at them!
$ open http://localhost:8080/

Full documentation

See http://twitter.github.com/zipkin, including the list of existing tracers.

Get involved

Join the openzipkin/zipkin gitter chat for questions and to talk with the developers. Otherwise, there are two mailing lists you can use to get in touch with other users and developers.

Users: https://groups.google.com/group/zipkin-user

Developers: https://groups.google.com/group/zipkin-dev

Issues

Noticed a bug? Please file an issue

Build

If you can't use a release or snapshot build, you can build zipkin's service jars directly from your fork using gradle.

$ git clone https://github.com/YOUR_USER/zipkin.git
$ cd zipkin/
$ ./gradlew shadowJar
$ ls */build/libs/*all.jar

See zipkin-web/README.md if you experience issues from npm.

IntelliJ IDEA

The most reliable way to import zipkin is to use the Gradle command-line and open the resulting project into Intellij.

Note Do not import as a Gradle project. If you do, you'll likely see classpath or other build related problems. That's why we use the command-line.

To build the project file, close any open window for zipkin and (re)generate the content like so:

$ ./gradlew cleanIdea idea

Import the the result via File, Open, (path you invoked gradlew). Dismiss any pop-ups about unlinked Gradle projects, as clicking those will likely break your project.

Contributing

See CONTRIBUTING.md for guidelines.

Areas where we'd love to see contributions:

  • adding tracing to more libraries and protocols
  • interesting reports generated with Hadoop from the trace data
  • extending collection to more transports and storage systems
  • trace data visualizations in the web UI

zipkin's People

Contributors

jamescway avatar franklinhu avatar abesto avatar sprsquish avatar eirslett avatar johanoskarsson avatar jerryli9876 avatar nshkrob avatar suchang avatar michaelsembwever avatar t-yuki avatar jfeltesse-mdsol avatar mosesn avatar elliottneilclark avatar analytically avatar vprithvi avatar srijs avatar sethp-jive avatar synk avatar trundle avatar jcarres-mdsol avatar kairsas avatar olix0r avatar postwait avatar yurishkuro avatar goblingame avatar alexmv avatar schlosna avatar gardleopard avatar jaredlwong avatar

Watchers

James Cloos avatar  avatar  avatar

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.