{"id":15372981,"url":"https://github.com/rs/pinba_http","last_synced_at":"2026-02-07T08:02:15.587Z","repository":{"id":65256221,"uuid":"1575067","full_name":"rs/pinba_http","owner":"rs","description":"Pinba HTTP Gateway","archived":false,"fork":false,"pushed_at":"2013-03-26T19:10:08.000Z","size":307,"stargazers_count":8,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-02T06:30:27.261Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-04-06T01:35:04.000Z","updated_at":"2016-11-09T12:54:38.000Z","dependencies_parsed_at":"2023-01-16T14:53:26.375Z","dependency_job_id":null,"html_url":"https://github.com/rs/pinba_http","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/rs/pinba_http","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rs%2Fpinba_http","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rs%2Fpinba_http/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rs%2Fpinba_http/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rs%2Fpinba_http/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rs","download_url":"https://codeload.github.com/rs/pinba_http/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rs%2Fpinba_http/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29189675,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-07T07:37:03.739Z","status":"ssl_error","status_checked_at":"2026-02-07T07:37:03.029Z","response_time":63,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":[],"created_at":"2024-10-01T13:53:52.356Z","updated_at":"2026-02-07T08:02:15.566Z","avatar_url":"https://github.com/rs.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Pinba HTTP Gateway\n==================\n\nPinba-HTTP is a HTTP interface for [Pinba](http://pinba.org/). It allows to forge Pinba timers from simple HTTP queries with optional tags. This is useful to time things on the client (javascript, flash) in the same backend as for you backend code.\n\nThis is a bit of a hack as Pinba isn't really meant to do that, but who cares? :)\n\nUsage\n-----\n\nTo account the frequency of an event, request the following URL from your client code:\n\n    http://hostname/track/mycounter\n\nThis will create a Pinba request, with `script_name` set to `mycounter`. You can then graph the number of request per second for this counter using a query like this:\n\n    SELECT req_per_sec FROM report_by_server_name WHERE script_name = 'mycounter';\n\nYou can add a time value to your counter by adding the time in seconds (float) to the request:\n\n    http://hostname/track/mytimer?t=0.231\n\nThe time value will be set as the `request_time` value. You can then get the average time for this timer using a query like this:\n\n    SELECT req_time_total/req_count FROM report_by_server_name WHERE script_name = 'mytimer';\n\nFinaly, you can add tags to your timer by adding a query string to your request. If at least one tag is present, a single sub-timer will be created with the provided tags:\n\n    http://hostname/track/mytimer?t=0.231\u0026tag1=value1\u0026tag2=value2\n\nYou can then create corresponding report table for the tags you want to query.\n\nYahoo Boomerang support\n-----------------------\n\nThis HTTP interface also provides an endpoint compatible with [Yahoo\nBoomerang](http://lognormal.github.com/boomerang/doc/), and end user\noriented web performance testing and beaconing. Several timers and\ntimestamps are sent in a single request. Each of them is transmitted\nto Pinba.\n\nIt is assumed that `nt_nav_st` timestamp is present. It will be used\nas a start point for other timestamps. Everything starting by `t_` or\n`Xt_` is considered as a timestamp, with the exception of `t_resp`,\n`t_page` and `t_done` which are already timers. Everything else is\nconsidered as a tag and will be attached to each timer.\n\nInstallation\n------------\n\nThis project requires the [Protocol Buffer Python library](http://code.google.com/apis/protocolbuffers/docs/pythontutorial.html).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frs%2Fpinba_http","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frs%2Fpinba_http","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frs%2Fpinba_http/lists"}