{"repo":"whitemerry/phpkin","free":true,"listed":false,"github":"https://github.com/whitemerry/phpkin","clone":"git clone https://github.com/whitemerry/phpkin.git","description":"First production ready, simple and full Zipkin implementation without dependencies.","language":"PHP","stars":76,"topics":["tracing","zipkin","opentracing","php-zipkin"],"license":"MIT","category":"analytics","readme_excerpt":"phpkin First production ready , simple and full Zipkin implementation without dependencies. Compatible with both front and back-end applications and respects B3 Propagation. Installing via Composer Upgrading to 2.0 Tracer used to serialize each Span the moment it was added. It now keeps the Span objects and serializes them once, in trace() , which is what makes getSpans() possible. What Zipkin receives is unchanged, but three things behave differently. addSpan() only accepts Span Passing anything else throws InvalidArgumentException . Serialization used to happen inside addSpan() , so any object with a toArray() method quietly worked: If you have such a class, extend Span or build a real Span from it. Spans are serialized at trace() time Anything you change on a Span after adding it now ends up in the trace. Sharing one Metadata instance between spans is the case that bites, because Metadata::set() appends: In 1.x the first span reported one annotation and the second reported two. In 2.0 both report both. Give each Span its own Metadata to keep the old result. Tracer::$spans holds Span objects Only relevant if you extend Tracer and read the protected property - it used to hold arrays. Use getSpans() where you can, and call toArray() yourself if you need the serialized form. Documentation Short implementation information In this project BinaryAnnotations are Metadata and annotations are replaced by AnnotationBlock witch allow you to create Annotations for Spans faster, and cle","default_branch":null,"files":null,"tree":[],"storefront":"/r/whitemerry","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/whitemerry/phpkin/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}