Code Monkey home page Code Monkey logo

zio-metrics-connectors's Introduction

ZIO Metrics Connectors

ZIO Metrics Connectors provides integration between ZIO and industry-leading monitoring and observability systems.

Development CI Badge Sonatype Releases Sonatype Snapshots javadoc ZIO Metrics Connectors

                                                                                                                                                        
    ┌─────────────────────┐           client -> server           ┌─────────────────────┐                   
    │                     ◀━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫                     │                   
    │     ZMX Server      │                                      │     ZMX Client      │                   
    │                     ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━▶                     │                   
    └─────────────────────┘           server -> client           └─────────────────────┘                   
              ┃                                                             ┃                              
                               (ZmxProtocol which is based                             
              ┃                 on the Redis RESP protocol)                 ┃                              
                                                                                                                     
              ┃                                                             ┃                              
                                                                                                          
              ▼                                                             ▼                              
 ┌───────────────────────────────────────────────┐    ┌─────────────────────────────────────────────────────┐
 │- Respond to Command from client               │    │- Send Command to server                             │
 │- User specified port server is to run on      │    │- User specified port server is running on           │
 │- Always run on localhost where ZIO is running │    │- Client implementations planned:                    │
 │- Supported Commands Planned:                  │    │    - CLI                                            │
 │    - Fiber Dump                               │    │    - Text editor / IDE                              │
 │    - Metrics                                  │    └─────────────────────────────────────────────────────┘
 │        - prometheus                           │                                                           
 │    - Test (Just replys with a test message)   │                                                                        
 └───────────────────────────────────────────────┘                                             

We want to give users the option to run a lightweight server local to where their ZIO app is running that supports a few commands to aid monitoring and metrics of their application.

Commands

Commands to support:

  • Fiber Dump - Fiber dump of all fibers
  • Metrics
    • stdout - prints metrics to stdout
    • prometheus - pushes metrics to prometheus
    • prometheus & other metrics integrations supported by utilizing zio-metrics
  • Test
    • Server replies with a test message - used to test server working

Client

Clients send commands to the server and wait for a response. Initially we are planning to support a CLI tool as the client but do plan to support some level of IDE/Text editor support to aid debugging.

Protocol

The protocol used to communicate between the client and server is a cut down version of the RESP protocol that Redis uses. For more information on this protocol please see the specification docs: Redis Protocol specification – Redis

Choosing this protocol enables us to have something simple to implement without any external dependencies being introduced and thereby keeping the client and server lightweight.

Documentation

Learn more on the ZIO Metrics Connectors homepage!

Contributing

For the general guidelines, see ZIO contributor's guide.

Code of Conduct

See the Code of Conduct

Support

Come chat with us on Badge-Discord.

License

License

zio-metrics-connectors's People

Contributors

adamgfraser avatar alesavin avatar arkxc avatar atooni avatar benetis avatar cheleb avatar dependabot[bot] avatar ghostdogpr avatar ithinkicancode avatar jczuchnowski avatar kadekm avatar khajavi avatar kitlangton avatar lkff avatar mijicd avatar olegych avatar ollyw avatar petoalbert avatar scala-steward avatar senia-psm avatar shankarshastri avatar softinio avatar subotic avatar sviezypan avatar swachter avatar toxicafunk avatar vigoo avatar virusdave avatar vladimirkl avatar vpavkin 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.