{"id":28837294,"url":"https://github.com/hubburu/ruby-plugin","last_synced_at":"2026-05-15T18:33:22.547Z","repository":{"id":62559629,"uuid":"507642001","full_name":"hubburu/ruby-plugin","owner":"hubburu","description":"A tracer for integrating Hubburu with GraphQL Ruby","archived":false,"fork":false,"pushed_at":"2022-06-26T22:28:33.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-20T01:46:25.811Z","etag":null,"topics":["graphql","monitoring","ruby"],"latest_commit_sha":null,"homepage":"https://www.hubburu.com/","language":"Ruby","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/hubburu.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-06-26T17:35:16.000Z","updated_at":"2022-06-27T06:29:24.000Z","dependencies_parsed_at":"2022-11-03T12:15:21.556Z","dependency_job_id":null,"html_url":"https://github.com/hubburu/ruby-plugin","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/hubburu/ruby-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubburu%2Fruby-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubburu%2Fruby-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubburu%2Fruby-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubburu%2Fruby-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hubburu","download_url":"https://codeload.github.com/hubburu/ruby-plugin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubburu%2Fruby-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33074843,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T11:35:32.926Z","status":"ssl_error","status_checked_at":"2026-05-15T11:35:31.362Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["graphql","monitoring","ruby"],"created_at":"2025-06-19T12:05:46.141Z","updated_at":"2026-05-15T18:33:22.532Z","avatar_url":"https://github.com/hubburu.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Gem Version](https://badge.fury.io/rb/hubburu.svg)](https://rubygems.org/gems/hubburu)\n\n# GraphQL Ruby Hubburu Plugin\n\nA tracer for integrating Hubburu with GraphQL Ruby\n\n## Installation\n\nInstall by adding it to your Gemfile, then bundling.\n\n```\n# Gemfile\ngem 'hubburu'\n```\n\n## Usage\n\nThese are the integration points you need to make to integrate with Hubburu.\n\n1. Add your API key\n2. Upload schema SDL to Hubburu\n3. Send operation reports to Hubburu\n\n### Adding Your API Key\n\nRegister for Hubburu, and you will be able to access your API Key from there. The recommended way is to add it to your environment variables. You can also add it manually to the Hubburu SDK calls.\n\n### Upload schema\n\nEither you can upload your schema on server startup. This is an OK way to do it but not suitable for all environments. If you want to manually send it (such as in a CI/CD pipeline), you can do so like this:\n\n```ruby\nnamespace :hubburu do\n  desc \"register new schema version with hubburu\"\n  task register: :environment do\n    api_key = ENV[\"HUBBURU_API_KEY\"]\n    environment = ENV[\"HUBBURU_ENVIRONMENT\"] || \"default\"\n\n    response = Hubburu.push_hubburu_schema(YOUR_SCHEMA, api_key, environment)\n    response_code = response.code.to_i\n\n    unless response_code \u003e= 200 \u0026\u0026 response_code \u003c 300\n      raise \"Failed to upload schema to Hubburu (status #{response_code})\"\n    end\n  end\nend\n```\n\n### Send operation reports\n\nThis is done by adding the Hubburu tracer to the GraphQL schema.\n\n```ruby\nrequire \"hubburu\"\n\nclass AppSchema \u003c GraphQL::Schema\n  ...\n\n  use(Hubburu,\n    request_id_context_key: :request_id,\n    queue_method: -\u003e(path, body, headers) { YOUR_ASYNCHRONOUS_WORKER_METHOD(path, body, headers) })\n\n  ...\nend\n\n```\n\n`request_id_context_key` \u0026 `queue_method` are optional. Omitting `queue_method` will send Hubburu reports immediate. Adding an asynchronous worker will allow you to configure queueing of the report sendouts. Example of a Sidekiq worker:\n\n```ruby\nclass HubburuUploadWorker\n  include Sidekiq::Worker\n  sidekiq_options queue: :low\n\n  def perform(url, body, headers)\n    Faraday.post(url, body, headers)\n  end\nend\n```\n\n## Development \u0026 Testing\n\nAfter checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.\n\nTo install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).\n\nThis plugin is being developed and tested in another repository. You are welcome to send bug reports either as an issue on Github or to [hello@hubburu.com](mailto:hello@hubburu.com).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhubburu%2Fruby-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhubburu%2Fruby-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhubburu%2Fruby-plugin/lists"}