https://github.com/monzo/phosphor
Distributed System Tracing in Go
https://github.com/monzo/phosphor
Last synced: about 1 year ago
JSON representation
Distributed System Tracing in Go
- Host: GitHub
- URL: https://github.com/monzo/phosphor
- Owner: monzo
- License: apache-2.0
- Created: 2015-02-04T22:22:32.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2017-05-29T05:09:20.000Z (about 9 years ago)
- Last Synced: 2025-03-31T16:16:57.307Z (over 1 year ago)
- Language: Go
- Homepage: https://phosphor.io
- Size: 769 KB
- Stars: 382
- Watchers: 116
- Forks: 25
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

Phosphor is a Distributed Tracing system, similar to [Google's Dapper](https://research.google.com/pubs/pub36356.html), [Twitter's Zipkin](https://twitter.github.io/zipkin), and [Hailo's Trace Service](https://speakerdeck.com/mattheath/scaling-microservices-in-go-high-load-strategy-2015?slide=45).

It is comprised of a few simple components:
- [Phosphor Client](https://github.com/mondough/phosphor-go), used to send traces from applications
- [Phosphor Daemon](https://github.com/mondough/phosphor/tree/master/phosphord), collects traces and forwards onto the main server
- [Phosphor Server](https://github.com/mondough/phosphor/tree/master/phosphor), stores traces and aggregated trace information
- Phosphor UI, view trace and debug information about your infrastructure

## Dependencies
- [NSQ](https://nsq.io) is used as the delivery transport between PhosphorD and the Phosphor Server
## Caveats
This system is currently in development, and some components are not yet open source. In particular, the persistence layer in this repository is an in-memory mock, and is therefore not appropriate for production usage. Additional storage adaptors will be added in the near future.