{"id":35055790,"url":"https://github.com/apitally/apitally-js-serverless","last_synced_at":"2026-05-23T05:33:53.985Z","repository":{"id":329676365,"uuid":"1118078360","full_name":"apitally/apitally-js-serverless","owner":"apitally","description":"Simple API monitoring \u0026 analytics for serverless JavaScript runtimes","archived":false,"fork":false,"pushed_at":"2026-05-18T20:54:09.000Z","size":241,"stargazers_count":1,"open_issues_count":3,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-05-18T22:58:13.908Z","etag":null,"topics":["api","api-analytics","api-logging","api-monitoring","api-observability","cloudflare-workers","hono","honojs","monitoring","rest-api","restful-api","serverless"],"latest_commit_sha":null,"homepage":"https://apitally.io","language":"TypeScript","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/apitally.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-17T08:26:59.000Z","updated_at":"2026-05-08T21:51:42.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/apitally/apitally-js-serverless","commit_stats":null,"previous_names":["apitally/apitally-js-serverless"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/apitally/apitally-js-serverless","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apitally%2Fapitally-js-serverless","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apitally%2Fapitally-js-serverless/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apitally%2Fapitally-js-serverless/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apitally%2Fapitally-js-serverless/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apitally","download_url":"https://codeload.github.com/apitally/apitally-js-serverless/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apitally%2Fapitally-js-serverless/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33384605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-23T04:15:53.637Z","status":"ssl_error","status_checked_at":"2026-05-23T04:15:53.242Z","response_time":53,"last_error":"SSL_read: 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":["api","api-analytics","api-logging","api-monitoring","api-observability","cloudflare-workers","hono","honojs","monitoring","rest-api","restful-api","serverless"],"created_at":"2025-12-27T09:54:08.430Z","updated_at":"2026-05-23T05:33:53.979Z","avatar_url":"https://github.com/apitally.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://apitally.io\" target=\"_blank\"\u003e\n    \u003cpicture\u003e\n      \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://assets.apitally.io/logos/logo-horizontal-new-dark.png\"\u003e\n      \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://assets.apitally.io/logos/logo-horizontal-new-light.png\"\u003e\n      \u003cimg alt=\"Apitally logo\" src=\"https://assets.apitally.io/logos/logo-horizontal-new-light.png\" width=\"220\"\u003e\n    \u003c/picture\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cb\u003eAPI monitoring \u0026 analytics made simple\u003c/b\u003e\u003c/p\u003e\n\u003cp align=\"center\" style=\"color: #ccc;\"\u003eMetrics, logs, and alerts for your serverless APIs — with just a few lines of code.\u003c/p\u003e\n\u003cbr\u003e\n\u003cp\u003e\n\u003cpicture\u003e\n  \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://assets.apitally.io/screenshots/overview-dark.png\"\u003e\n  \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"https://assets.apitally.io/screenshots/overview-light.png\"\u003e\n  \u003cimg alt=\"Apitally dashboard\" src=\"https://assets.apitally.io/screenshots/overview-light.png\"\u003e\n\u003c/picture\u003e\n\u003c/p\u003e\n\u003cbr\u003e\n\n# Apitally SDK for Cloudflare Workers\n\n[![Tests](https://github.com/apitally/apitally-js-serverless/actions/workflows/tests.yaml/badge.svg?event=push)](https://github.com/apitally/apitally-js-serverless/actions)\n[![Codecov](https://codecov.io/gh/apitally/apitally-js-serverless/graph/badge.svg?token=sFIDRfSfca)](https://codecov.io/gh/apitally/apitally-js-serverless)\n[![npm](https://img.shields.io/npm/v/@apitally/serverless?logo=npm\u0026color=%23cb0000)](https://www.npmjs.com/package/@apitally/serverless)\n\nApitally is a simple API monitoring and analytics tool that makes it easy to understand API usage, monitor performance, and troubleshoot issues.\nGet started in minutes by just adding a few lines of code and a Logpush job.\n\nLearn more about Apitally on our 🌎 [website](https://apitally.io) or check out\nthe 📚 [documentation](https://docs.apitally.io).\n\nThis SDK is for APIs running on [Cloudflare Workers](https://developers.cloudflare.com/workers/) and relies on [Logpush](https://developers.cloudflare.com/workers/observability/logs/logpush/) to send data to Apitally.\n\n## Key features\n\n### API analytics\n\nTrack traffic, error and performance metrics for your API, each endpoint and\nindividual API consumers, allowing you to make informed, data-driven engineering\nand product decisions.\n\n### Request logs\n\nDrill down from insights to individual API requests or use powerful search and filters to\nfind specific requests. View correlated application logs for a complete picture\nof each request, making troubleshooting faster and easier.\n\n### Error tracking\n\nUnderstand which validation rules in your endpoints cause client errors. Capture\nerror details and stack traces for 500 error responses.\n\n### API monitoring \u0026 alerts\n\nGet notified immediately if something isn't right using custom alerts and synthetic\nuptime checks. Alert notifications can be delivered via email, Slack and Microsoft Teams.\n\n## Supported frameworks\n\n| Framework                                  | Supported versions | Setup guide                                                           |\n| ------------------------------------------ | ------------------ | --------------------------------------------------------------------- |\n| [**Hono**](https://github.com/honojs/hono) | `4.x`              | [Link](https://docs.apitally.io/setup-guides/hono-cloudflare-workers) |\n\nApitally also supports many other web frameworks in [JavaScript](https://github.com/apitally/apitally-js), [Python](https://github.com/apitally/apitally-py), [Go](https://github.com/apitally/apitally-go), [.NET](https://github.com/apitally/apitally-dotnet) and [Java](https://github.com/apitally/apitally-java) via our other SDKs.\n\n## Getting started\n\nIf you don't have an Apitally account yet, first [sign up here](https://app.apitally.io/?signup).\n\n### 1. Create app in Apitally\n\nCreate an app in the Apitally dashboard and select **Hono (Cloudflare Workers)** as your framework. You'll see detailed setup instructions, which also include your client ID.\n\n### 2. Create Logpush job\n\nLog in to the [Cloudflare dashboard](https://dash.cloudflare.com/) and navigate to _Analytics \u0026 Logs \u003e Logpush_. Create a [Logpush](https://developers.cloudflare.com/workers/observability/logs/logpush/) job with the following settings:\n\n| Setting                      | Value                                                                              |\n| ---------------------------- | ---------------------------------------------------------------------------------- |\n| Destination                  | HTTP destination                                                                   |\n| HTTP endpoint                | `https://hub.apitally.io/v2/{client-id}/{env}/logpush`                             |\n| Dataset                      | Workers trace events                                                               |\n| If logs match...             | Filtered logs: EventType equals `fetch` and ScriptName equals `{your-worker-name}` |\n| Send the following fields... | General: Event, EventTimestampMs, Logs                                             |\n\nIn the HTTP endpoint, replace `{client-id}` with your app's client ID and `{env}` with the environment (e.g. `prod` or `dev`). In the filter criteria, replace `{your-worker-name}` with the name of your Worker, as specified in your Wrangler config.\n\n### 3. Configure Worker\n\nEnable [Workers Logs](https://developers.cloudflare.com/workers/observability/logs/workers-logs/) and [Logpush](https://developers.cloudflare.com/workers/observability/logs/logpush/) in your `wrangler.toml` configuration file:\n\n```toml\nlogpush = true\n\n[observability]\nenabled = true\nhead_sampling_rate = 1\n\n[observability.logs]\ninvocation_logs = true\n```\n\n### 4. Add middleware\n\nInstall the SDK:\n\n```bash\nnpm install @apitally/serverless\n```\n\nThen add the Apitally middleware to your Hono application using the `useApitally` function:\n\n```javascript\nimport { Hono } from \"hono\";\nimport { useApitally } from \"@apitally/serverless/hono\";\n\nconst app = new Hono();\n\nuseApitally(app, {\n  logRequestHeaders: true,\n  logRequestBody: true,\n  logResponseHeaders: true,\n  logResponseBody: true,\n});\n\n// Ensure route handlers are registered after useApitally()\n```\n\nFor further instructions, see our\n[setup guide for Hono on Cloudflare Workers](https://docs.apitally.io/setup-guides/hono-cloudflare-workers).\n\nSee the [SDK reference](https://docs.apitally.io/sdk-reference/javascript-serverless) for all available configuration options, including how to mask sensitive data, customize request logging, and more.\n\n## Getting help\n\nIf you need help please\n[create a new discussion](https://github.com/orgs/apitally/discussions/categories/q-a)\non GitHub or email us at [support@apitally.io](mailto:support@apitally.io). We'll get back to you as soon as possible.\n\n## License\n\nThis library is licensed under the terms of the [MIT license](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapitally%2Fapitally-js-serverless","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapitally%2Fapitally-js-serverless","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapitally%2Fapitally-js-serverless/lists"}