{"id":21406694,"url":"https://github.com/ringcentral/hystrix-addons","last_synced_at":"2025-03-16T17:16:51.119Z","repository":{"id":66137928,"uuid":"77469978","full_name":"ringcentral/hystrix-addons","owner":"ringcentral","description":"Some useful stuff for Netflix's Hystrix https://github.com/Netflix/Hystrix","archived":false,"fork":false,"pushed_at":"2017-03-22T00:57:20.000Z","size":74,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-23T04:11:26.822Z","etag":null,"topics":["circuit-breaker","event-stream","hystrix","hystrix-addons","rxjava"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ringcentral.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-12-27T16:53:21.000Z","updated_at":"2024-06-12T02:35:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"ac6755e8-9062-41d5-8070-6fada4492342","html_url":"https://github.com/ringcentral/hystrix-addons","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ringcentral%2Fhystrix-addons","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ringcentral%2Fhystrix-addons/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ringcentral%2Fhystrix-addons/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ringcentral%2Fhystrix-addons/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ringcentral","download_url":"https://codeload.github.com/ringcentral/hystrix-addons/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243902321,"owners_count":20366262,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["circuit-breaker","event-stream","hystrix","hystrix-addons","rxjava"],"created_at":"2024-11-22T16:41:56.829Z","updated_at":"2025-03-16T17:16:50.882Z","avatar_url":"https://github.com/ringcentral.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Useful Hystrix addons\n\n[![Travis CI][travis img]][travis]\n[![Download][bintray img]][bintray]\n[![codecov][codecov img]][codecov]\n[![Codacy][codacy img]][codacy]\n[![][license img]][license]\n\n\n1. **ComposedHystrixMetricsPublisher**\n\n    According to Hystrix specification it is possible to register only one plugin of every type. This class is supposed to avoid this limitation and register list of plugins.\n    All of these plugins will be called sequentially in case of Hystrix events. Sometimes it can be useful.\n\n    Example:\n    ```java\n        HystrixCodaHaleMetricsPublisher plugin1 = new HystrixCodaHaleMetricsPublisher(new MetricRegistry());\n        HystrixMetricsInitializationNotifier plugin2 = new HystrixMetricsInitializationNotifier();\n        ComposedHystrixMetricsPublisher composedPlugin = new ComposedHystrixMetricsPublisher(plugin1, plugin2);\n        HystrixPlugins.getInstance().registerMetricsPublisher(composedPlugin);\n    ```\n\n2. **HystrixAggregatedEventStream**\n\n    This event stream aggregates all Hystrix events for every Hystrix Command and exposes it as a rx-java Observable. \n    It also dynamically adds lazy-initialized commands so event stream is fully aggregated.\n\n    Example:\n    ```java\n        HystrixMetricsInitializationNotifier initNotifier = new HystrixMetricsInitializationNotifier();\n        HystrixAggregatedEventStream aggregatedStream = new HystrixAggregatedEventStream(initNotifier, m -\u003e true);\n        ...\n        aggregatedStream.observe().map(\u003c...\u003e).filter(\u003c...\u003e);\n\n    ```\n\n[travis]:https://travis-ci.org/ringcentral/hystrix-addons\n[travis img]:https://travis-ci.org/ringcentral/hystrix-addons.svg?branch=master\n[bintray]:https://bintray.com/ringcentral/maven/com.ringcentral.platform%3Ahystrix-addons/_latestVersion\n[bintray img]:https://api.bintray.com/packages/ringcentral/maven/com.ringcentral.platform%3Ahystrix-addons/images/download.svg\n[codecov]:https://codecov.io/gh/ringcentral/hystrix-addons\n[codecov img]:https://codecov.io/gh/ringcentral/hystrix-addons/branch/develop/graph/badge.svg\n[codacy]:https://www.codacy.com/app/mskonovalov/hystrix-addons?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=ringcentral/hystrix-addons\u0026utm_campaign=badger\n[codacy img]:https://api.codacy.com/project/badge/Grade/d48232b8c6014ef99f420b06df8f5e27\n[license]:LICENSE\n[license img]:https://img.shields.io/badge/License-MIT-blue.svg\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fringcentral%2Fhystrix-addons","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fringcentral%2Fhystrix-addons","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fringcentral%2Fhystrix-addons/lists"}