{"id":23338520,"url":"https://github.com/cloudwan/watchdog-sdk","last_synced_at":"2026-03-20T01:13:33.035Z","repository":{"id":38201105,"uuid":"451566549","full_name":"cloudwan/watchdog-sdk","owner":"cloudwan","description":null,"archived":false,"fork":false,"pushed_at":"2023-11-14T10:11:22.000Z","size":17192,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-08-23T01:38:10.733Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloudwan.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}},"created_at":"2022-01-24T17:35:19.000Z","updated_at":"2024-05-20T06:32:32.000Z","dependencies_parsed_at":"2023-11-14T11:28:23.456Z","dependency_job_id":"7763c7e8-c352-41ae-8db3-a0826011499b","html_url":"https://github.com/cloudwan/watchdog-sdk","commit_stats":null,"previous_names":[],"tags_count":148,"template":false,"template_full_name":null,"purl":"pkg:github/cloudwan/watchdog-sdk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudwan%2Fwatchdog-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudwan%2Fwatchdog-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudwan%2Fwatchdog-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudwan%2Fwatchdog-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloudwan","download_url":"https://codeload.github.com/cloudwan/watchdog-sdk/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudwan%2Fwatchdog-sdk/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29326078,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-11T02:08:56.257Z","status":"ssl_error","status_checked_at":"2026-02-11T02:08:51.338Z","response_time":97,"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":[],"created_at":"2024-12-21T03:14:14.592Z","updated_at":"2026-02-11T03:01:54.575Z","avatar_url":"https://github.com/cloudwan.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Watchdog SDK\n\n## Overview\nWatchdog is a network monitoring service built on top of EdgeLQ and, just like EdgeLQ platform, uses same Goten\nframework. Therefore, it follows same conventions, is gRPC and REST compatible.\n\nWatchdog SDK provides:\n* Set of proto files. They can be used to learn about API and can help in generating client library in\n  practically any programming language.\n* Dedicated Golang client library for this service. It was generated using proto files by dedicated protoc\n  compilers from Goten.\n* Docs in HTML format - located [here](./docs/apis), with full API reference.\n* [Examples](./examples/cmd) - they use our Golang library.\n\nIn simple words, Watchdog SDK provides code for client-based applications talking to Watchdog service.\n\nIt depends on [Goten SDK](github.com/cloudwan/goten-sdk) and [EdgeLQ SDK](github.com/cloudwan/edgelq-sdk).\n\n## Repository structure\nGoten enforces common standards regarding code structure and its practically same in every SDK.\n\nDescription of basic directories:\n\n### proto/v1alpha2\nProvides description of APIs, resources and other objects in protobuf format. They can be used to learn about service\nor be used in order to generate client libraries in other programming languages.\n\nSeparation of APIs and resources into subpackages allows building more light-weight applications.\n\n### resources/v1alpha2/\\\u003cresource-name\\\u003e\nGolang module for single resource. Contains definition of it and all helper objects - dedicated Filter, FieldMask,\nset of FieldPaths etc.\n\n### client/v1alpha2/\\\u003capi-name\\\u003e\nContains basic (almost like raw, but type safe) client for communication with RPC API and definitions for most\nrequest/response objects.\n\n### client/v1alpha2/watchdog\nContains sum of all clients for Watchdog. May not be recommended if we want to minimize size of application runtime.\n\n### access/v1alpha2/\\\u003cresource-name\\\u003e\nContains high-level client-based components like Watcher - dedicated for each resource.\n\n## How to use\nWatchdog SDK utilizes [Goten SDK](github.com/cloudwan/goten-sdk) and [EdgeLQ SDK](github.com/cloudwan/edgelq-sdk),\nwhich contain basic instructions. It does not require much extra - in order to develop Golang application with this SDK,\nyou need to install Go and include SDK in your list of dependencies. You can use [examples](./examples) as a help.\n\nIn order to generate SDK in other language, you need to follow steps regarding protoc installation, as described in Goten\nand EdgeLQ SDKs. The only extra thing to do, is to include directory with this repository (on your machine) as additional\ninclude proto path.\n\n## Notes about examples\nSince Goten and EdgeLQ enforce same standards everywhere (Goten enforces clients/API, EdgeLQ authentication and authorization),\nwe have put actually more detailed examples in EdgeLQ SDK repository. EdgeLQ SDK notes on examples contains also all\nnecessary information about authentication, so it may be good starting point if you have problems. This note will be\nplaced in every SDK repo that depends on EdgeLQ SDK.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudwan%2Fwatchdog-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloudwan%2Fwatchdog-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudwan%2Fwatchdog-sdk/lists"}