+1 (binding) On Tue, Aug 28, 2018 at 6:48 AM, Brian Devins <badev...@gmail.com> wrote:
> +1 (non-binding) > > On Mon, Aug 27, 2018 at 3:29 PM Kevin A. McGrail <kmcgr...@apache.org> > wrote: > > > +1 (binding) > > On 8/27/2018 3:27 PM, Josh Elser wrote: > > > +1 (binding) > > > > > > On 8/26/18 11:14 PM, Mick Semb Wever wrote: > > >> After a brief discussion¹ I would like to call a VOTE to accept > > >> Zipkin into the Apache Incubator. > > >> The full proposal is available on the wiki² and is pasted below in > > >> text form as well. > > >> > > >> This vote will run at least 72 hours. Please VOTE as follows: > > >> > > >> [ ] +1 Accept Zipkin into the Apache Incubator > > >> [ ] +0 No opinion > > >> [ ] -1 Do not accept Zipkin into the Apache Incubator because… > > >> > > >> regards, > > >> Mick > > >> > > >> [1] > > >> > > https://lists.apache.org/thread.html/54798a5059db1d5716ed9910a15c92 > 945509a25ec3b7ccb6b1215c53@%3Cgeneral.incubator.apache.org%3E > > >> [2] https://wiki.apache.org/incubator/ZipkinProposal > > >> > > >> > > >> > > >> = Abstract = > > >> Zipkin is a distributed tracing system. It helps gather timing data > > >> needed to troubleshoot latency problems in microservice > > >> architectures. It manages both the collection and lookup of this > > >> data. Zipkin’s design is based on the Google Dapper paper. > > >> > > >> = Proposal = > > >> Zipkin provides a defined data model and payload type for distributed > > >> trace data collection. It also provides an UI and http api for > > >> querying the data. Its server implements this api and includes > > >> abstractions for storage and transport of trace payloads. The > > >> combination of these parts avoid lock-in to a specific tracing > > >> backend. For example, Zipkin includes integration with different open > > >> source storage mechanisms like Apache Cassandra and Elasticsearch. It > > >> also includes bridges to convert collected data and forward it to > > >> service offerings such as Amazon X-Ray and Google Stackdriver. > > >> Ecosystem offering extend this portability further. > > >> > > >> While primarily focused on the system, Zipkin also includes tracing > > >> libraries which applications use to report timing information. > > >> Zipkin's core organization includes tracer libraries written in Java, > > >> Javascript, Go, PHP and Ruby. These libraries use the formats > > >> mentioned above to report data, as well "B3" which is a header format > > >> needed to send trace identifiers along with production requests. Many > > >> Zipkin libraries can also send data directly to other services such > > >> as Amazon X-Ray and Google Stackdriver, skipping any Zipkin > > >> infrastructure. There are also more Zipkin tracing libraries outside > > >> the core organization than inside it. This is due to the "OpenZipkin" > > >> culture of promoting ecosystem work. > > >> > > >> = Background = > > >> Zipkin began in 2012 at Twitter during a time they were investigating > > >> performance problems underlying the "fail whale" seen by users. The > > >> name Zipkin is from the Turkish word for harpoon: the harpoon that > > >> will kill the failures! Incidentally, Zipkin was not the first > > >> tracing system, it had roots in a former system at Twitter named > > >> BigBrotherBird. It is due to BigBrotherBird that the de-facto tracing > > >> headers we still use today include the prefix "X-B3". > > >> > > >> In 2015, a community of users noticed the project was not healthy in > > >> so far as it hadn't progressed and often didn't accept pull requests, > > >> and the Cassandra backend was stuck on an unmaintained library. For > > >> example, the Apache Incubator H-Trace project started in some ways as > > >> a reaction to the inability to customize the code. The root cause of > > >> this was Twitter moving to internal storage (Manhattan) and also the > > >> project not being managed as a product. By mid 2015, the community > > >> regrouped as OpenZipkin and the codebase moved from Twitter to an org > > >> also named OpenZipkin. This led to fast progress on concerns > > >> including initially a server rewrite and Docker based deployment. > > >> > > >> In 2018, the second version of the data model completed, and along > > >> the way, many new libraries became standard, including javascript, > > >> golang and PHP. The community is dramatically larger than 2015, and > > >> Zipkin remains the most popular tracing system despite heavy > > >> competition. > > >> > > >> = Rationale = > > >> Zipkin is a de-facto distributed tracing system, which is more > > >> important as architectures become more fine grained due to popularity > > >> of microservice or even serverless architectures. Applications > > >> transition to use more complex communication including asynchronous > > >> code and service mesh, increasing the need for tools that visualize > > >> the behavior of requests as they map across an architecture. > > >> > > >> Zipkin's server is focused only on distributed tracing. It is meant > > >> to be used alongside existing logging and metrics systems. Generally, > > >> the community optimizes brown field concerns such as interop over > > >> breaking changes such as experimental features. The combination of > > >> code and community make Zipkin a safe and easier choice for various > > >> sites to introduce or grow their observability practice. > > >> > > >> = Initial Goals = > > >> The initial goals are to mature OpenZipkin's community process. For > > >> example, while OpenZipkin has a good collaborative process, it lacks > > >> formality around project management functions defined in the Apache > > >> Software Foundation (ASF). We also seek out help with brand abuse > > >> which is becoming common practice in the competitive landscape, yet > > >> demotivates volunteers. Towards volunteers, help with on boarding > > >> summer of code and funding for those who cannot afford to get to > > >> conferences on their own would be nice. Finally, we occasionally have > > >> organizations who are constrained to only work with foundation > > >> projects: ASF is often mentioned, and being in the ASF removes this > > >> collaboration roadblock. > > >> > > >> Zipkin will not move all existing code into Apache. In fact, most > > >> Zipkin ecosystem exists outside our org! The goal is to start with > > >> the data formats and server code. Possibly the java client-side > > >> libraries can move initially as well, depending on community feedback. > > >> > > >> = Current Status = > > >> == Meritocracy == > > >> Zipkin is an active community of contributors who are encouraged to > > >> become committers. A Zipkin committer understands the importance of > > >> seeking community feedback, and the gravity of brown field concerns. > > >> Committers express diverse interest by contributing beyond their > > >> sites immediate needs and acknowledging features require diverse need > > >> before being merged into the core repositories. A camaraderie between > > >> committers and not yet committers exists and is re-inforced with face > > >> to face meetups where possible. We expect this to continue and build > > >> with incubation and ideally acceptance into the Apache Software > > >> Foundation (ASF). > > >> > > >> Zipkin encourages involvement from its community members, and the > > >> issues are open and available to any developers who wish to > > >> contribute to the project. The Zipkin team currently seeks help and > > >> asks for suggestions utilizing zipkin-user and zipkin-dev Google > > >> groups and Gitter chat on https://gitter.im/openzipkin/zipkin. While > > >> all contributions are reviewed, generally a "rule of three" policy on > > >> diverse need must be met before a feature is considered standard. > > >> > > >> == Community == > > >> Zipkin has a highly active and growing community of users and > > >> developers. The community is currently fostered on chat > > >> https://gitter.im/openzipkin/zipkin and issues in their respective > > >> GitHub repositories, notably the main server: > > >> https://github.com/openzipkin/zipkin > > >> > > >> There are well over 1000 users in the chat room and hundreds who > > >> contributed code to code in the main OpenZipkin GitHub org. Interest > > >> metrics have grown dramatically: For example, in three years and a > > >> month from when Zipkin began until the time OpenZipkin formed, its > > >> main repository accumulated 2400 GitHub stars. In the same time > > >> after, it accumulated over 6700. Other metrics such as blog count and > > >> community meetings have similarly gone way up. We expect further > > >> growth as more learn about Zipkin and can engage with Zipkin through > > >> the guidance of the Apache Software Foundation (ASF). > > >> > > >> == Core Developers == > > >> The core contributors are a diverse group comprised of both > > >> unaffiliated developers and those hailing from small to large > > >> companies. They are scattered geographically, and some are highly > > >> experienced industry as well as open source developers. Though their > > >> backgrounds may be diverse, the contributors are united in their > > >> belief in community driven software development. > > >> > > >> More detailed information on the core developers and contributors in > > >> general can be found under the section on homogeneous developers. > > >> > > >> == Alignment == > > >> Zipkin adoption is growing, and it is no longer feasible for it to > > >> remain as an isolated project. Apache is experienced in dealing with > > >> software that is very widely accepted and has a growing audience. The > > >> proposers believe that the Zipkin team can benefit from the ASF's > > >> experience and its broad array of users and developers. > > >> > > >> Zipkin supports several Apache projects and options exist for > > >> integration with others. Apache CXF, Apache Camel, Apache Incubator > > >> SkyWalking and Apache Incubator HTrace all utilize Zipkin APIs in > > >> their core repositories. Many more do via community extensions. > > >> Apache Maven is primarily use by Zipkin, and can be used by projects > > >> who build upon Zipkin projects. > > >> > > >> == Known Risks == > > >> === Orphaned products === > > >> Zipkin is already being utilized at multiple companies that are > > >> actively participating in improving the code. The thriving community > > >> centered around Zipkin has seen steady growth, and the project is > > >> gaining traction with developers. The risks of the code being > > >> abandoned are minimal. > > >> > > >> === Inexperience with Open Source === > > >> Zipkin rebooted its community in July 2015 and grown there for over > > >> three years. Additionally, many of the committers have extensive > > >> experience with other open source projects. Zipkin fosters a > > >> collaborative and community-driven environment. > > >> > > >> In the interest of openly sharing technology and attracting more > > >> community members, several of our developers also regularly attend > > >> conferences in North America and Europe to give talks about Zipkin. > > >> Zipkin meetups are also planned every few months for developers and > > >> community members to come together in person and discuss ideas. > > >> > > >> === Homogenous Developers === > > >> At the time of the writing, OpenZipkin's core 12 developers all work > > >> at different companies around the globe. Most operate their own > > >> tracing sites, but some no longer operate sites at all: staying for > > >> the community we've built. Our ASF champion, Mick Semb Wever, is both > > >> a committer and an experienced ASF member. > > >> > > >> The Zipkin developers thrive upon the diversity of the community. The > > >> Zipkin gitter channel is always active, and the developers often > > >> collaborate on fixes and changes in the code. They are always happy > > >> to answer users' questions as well. > > >> > > >> Zipkin is interested in continuing to expand and strengthen its > > >> network of developers and community members through the ASF. > > >> > > >> === Reliance on Salaried Developers === > > >> Zipkin has one full time salaried developer, Adrian Cole. Though some > > >> of the developers are paid by their employer to contribute to Zipkin, > > >> many Zipkin developers contribute code and documentation on their own > > >> time and have done so for a lengthy period. Given the current stream > > >> of development requests and the committers' sense of ownership of the > > >> Zipkin code, this arrangement is expected to continue with Zipkin' > > >> induction into the ASF. > > >> > > >> === Relationships with Other Apache Products === > > >> Zipkin, Apache Incubator Skywalking and Apache Incubator HTrace > > >> address similiar use cases. Most similarities are between Zipkin and > > >> HTrace: Zipkin hopes to help serve the community formerly served by > > >> HTrace, but understands the data services focus of HTrace may require > > >> different tooling. SkyWalking addresses more feature surface than > > >> Zipkin. For example, metrics collection is not a goal of Zipkin, yet > > >> it is a goal of SkyWalking. SkyWalking accepts Zipkin formats and can > > >> be used as a replacement server. SkyWalking PPMC member, Sheng Wu, > > >> has been a routine member of Zipkin design discussions and has > > >> offered to help Zipkin through ASF process. > > >> > > >> While Zipkin does not directly rely upon any Apache project, zipkin > > >> supports several Apache projects. Apache CXF, Apache Camel, Apache > > >> Incubator SkyWalking, Apache Incubator Dubbo, Apache Incubator > > >> ServiceComb and Apache Incubator HTrace all utilize Zipkin APIs in > > >> their core repositories. Many more do via community extensions. > > >> Apache Maven is primarily use by Zipkin, and can be used by projects > > >> who build upon Zipkin projects. > > >> > > >> === A Excessive Fascination with the Apache Brand === > > >> Zipkin recognizes the fortitude of the Apache brand, but the > > >> motivation for becoming an Apache project is to strengthen and expand > > >> the Zipkin community and its user base. While the Zipkin community > > >> has seen steady growth over the past several years, association with > > >> the ASF is expected to expedite this pattern of growth. Development > > >> is expected to continue on Zipkin under the Apache license whether or > > >> not it is supported by the ASF. > > >> > > >> == Documentation == > > >> The Zipkin project documentation is publicly available at the > > >> following sites: > > >> > > >> * https://zipkin.io: project overview > > >> * http://zipkin.io/zipkin-api/#/: swagger specification > > >> * https://github.com/openzipkin/b3-propagation: header formats > > >> * https://zipkin.io/zipkin/: Javadocs for the Zipkin server > > >> > > >> == Initial Source == > > >> The initial source is located on GitHub in the following repositories: > > >> > > >> * git://github.com/OpenZipkin/zipkin.git > > >> * git://github.com/OpenZipkin/zipkin-dependencies.git > > >> * git://github.com/OpenZipkin/zipkin-api.git > > >> * git://github.com/OpenZipkin/b3-propagation.git > > >> * git://github.com/OpenZipkin/docker-zipkin.git > > >> * git://github.com/OpenZipkin/docker-zipkin-dependencies.git > > >> * git://github.com/openzipkin/zipkin-reporter-java > > >> * git://github.com/openzipkin/brave > > >> * git://github.com/openzipkin/zipkin-aws > > >> * git://github.com/openzipkin/docker-zipkin-aws > > >> * git://github.com/openzipkin/zipkin-azure > > >> * git://github.com/openzipkin/docker-zipkin-azure > > >> * git://github.com/openzipkin/zipkin-gcp > > >> * git://github.com/openzipkin/docker-zipkin-gcp > > >> * git://github.com/openzipkin/brave-cassandra > > >> * git://github.com/openzipkin/docker-jre-full > > >> * git://github.com/openzipkin/brave-karaf > > >> > > >> Depending on community progress, other repositories may be moved as > well > > >> > > >> == Source and Intellectual Property Submission Plan == > > >> Zipkin's initial source is licensed under the Apache License, Version > > >> 2.0. https://github.com/openzipkin/zipkin/blob/master/LICENSE > > >> > > >> All source code is copyrighted to 'The OpenZipkin Authors', to which > > >> the existing core community(members list in Initial Committers) has > > >> the rights to re-assign to the ASF. > > >> > > >> == External Dependencies == > > >> This is a listing of Maven coordinates for all of the external > > >> dependencies Zipkin uses. All of the dependencies are in Sonatype and > > >> their licenses should be accessible. > > >> > > >> == Cryptography == > > >> Zipkin contains no cryptographic algorithms. > > >> > > >> = Required Resources = > > >> == Mailing Lists == > > >> * Zipkin-dev: for development discussions > > >> * Zipkin-user: for community discussions > > >> * Zipkin-private: for PPMC discussions > > >> * Zipkin-commits: for code changes > > >> > > >> == Git Repositories == > > >> The Zipkin team is experienced in git and requests to transfer GitHub > > >> repositories(list in Initial Source) to Apache. > > >> > > >> == Issue Tracking == > > >> The community would like to continue using GitHub Issues. > > >> > > >> = Initial Committers = > > >> * Zoltán Nagy > > >> * Adrian Cole, Pivotal > > >> * Bas van Beek > > >> * Brian Devins > > >> * Eirik Sletteberg > > >> * Jeanneret Pierre-Hugues > > >> * Jordi Polo Carres > > >> * José Carlos Chávez > > >> * Kristof Adriaenssens > > >> * Lance Linder > > >> * Mick Semb Wever, > > >> * Tommy Ludwig > > >> > > >> = Champion = > > >> * Michael Semb Wever, m...@apache.org > > >> > > >> = Mentors = > > >> * Michael Semb Wever, m...@apache.org > > >> * Andriy Redko, r...@apache.org > > >> * John D. Ament, johndam...@apache.org > > >> * Willem Ning Jiang, ningji...@apache.org > > >> > > >> = Sponsoring Entity = > > >> We are requesting the Apache Incubator to sponsor this project. > > >> > > >> --------------------------------------------------------------------- > > >> To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org > > >> For additional commands, e-mail: general-h...@incubator.apache.org > > >> > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org > > > For additional commands, e-mail: general-h...@incubator.apache.org > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org > > For additional commands, e-mail: general-h...@incubator.apache.org > > > > > -- Byung-Gon Chun