{"id":21906634,"url":"https://github.com/enlight/wayward-metrics","last_synced_at":"2025-03-22T07:25:58.906Z","repository":{"id":854432,"uuid":"585824","full_name":"enlight/wayward-metrics","owner":"enlight","description":"An event logging and data tracing system.","archived":false,"fork":false,"pushed_at":"2010-05-02T11:45:13.000Z","size":230,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-27T07:43:14.554Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","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/enlight.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":"2010-03-30T00:38:41.000Z","updated_at":"2014-05-05T13:56:40.000Z","dependencies_parsed_at":"2022-07-05T18:30:45.718Z","dependency_job_id":null,"html_url":"https://github.com/enlight/wayward-metrics","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enlight%2Fwayward-metrics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enlight%2Fwayward-metrics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enlight%2Fwayward-metrics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/enlight%2Fwayward-metrics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/enlight","download_url":"https://codeload.github.com/enlight/wayward-metrics/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244921601,"owners_count":20532290,"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":[],"created_at":"2024-11-28T16:53:50.172Z","updated_at":"2025-03-22T07:25:58.885Z","avatar_url":"https://github.com/enlight.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Wayward Metrics\n=================\n\nWayward Metrics is a temporary name.\n\nOverview\n--------\n\nWayward Metrics is a solution for collecting, storing and analyzing\ndata logged by an application, whether that application runs\nas a single process or as part of a distributed cluster.\n\nThe data which can be tracked by this system is easily extended, but the\ninitial versions of the software will support:\n\n   * Logging\n   * Threading and Locking\n   * Basic Profiling by manual instrumentation\n   * Monitoring job / task queues (start / stop times).\n\nFuture extensions will include:\n\n   * Tracking memory allocations, including support for arenas, multiple\n     heaps and garbage collection.\n   * Tracking file system I/O.\n   * Hooking into other providers like dtrace and ptrace/truss and\n     bridging that data into this system for further analysis.\n   * Database activity (queries, operations).\n\nAll records include the thread ID that was active as well as high precision\ntime stamps.\n\nThe idea is that you should be able to instrument your application\nor framework so that the data can be used to determine what was going\non within the application for debugging or performance optimization.\nBy extending the system, you could even use this software for analyzing\ninteractions with the user interface, mean time between failure for your\napplication in production, order / sales data, or whatever your\nimagination comes up with.\n\nThis software consists of 3 parts:\n\n   * Reporting agents which feed data into the aggregation server.\n   * The aggregation server gathers data from the reporting agents,\n     archives it to disk and allows other clients to observe the\n     event streams being reported as well as retrieve older event\n     streams.\n   * Analysis clients observe and retrieve event stream data from\n     the aggregation server and perform analytical operations as\n     well as visualization of the data.  Analysis clients can combine\n     data from multiple reporting sessions as well to get a broader\n     and more complete view in a networked or distributed environment.\n     An example of an analysis client could be a tool that analyzes\n     locking / threading behavior to proactively identify buggy\n     behavior.\n\nLicensing Model\n---------------\n\nThis is still being worked out. It is likely that the reporting client and\naggregation server will be under either the MIT or Apache 2 licenses. The\nlicensing for the graphical analysis client remains to be determined.\nText-based analysis tools will be provided under the same license as the\nreporting client and aggregation server.\n\nStatus\n------\n\nThis project is in the very early stages of development and is not ready\nfor usage at this time.\n\nImplementations\n---------------\n\nThe various implementations for each language are in subdirectories here\nand have their own README outlining their dependencies and how to build\nthem.\n\nWe are currently working on implementations of the client in both Python\nand C.  The server is currently being implemented in Python. All of the\nwork in Python is using the Twisted framework.\n\nInspiration\n-----------\n\nMy work on this has been inspired by other software that I have used\nor admired in the past.\n\nThis includes:\n\n   * [Haskell ThreadScope](http://code.haskell.org/ThreadScope/)\n   * [GC Spy](http://www.cs.kent.ac.uk/projects/gc/gcspy/) ([and link at Sun](http://research.sun.com/projects/gcspy/))\n   * [Deja Insight](http://www.dejatools.com/dejainsight)\n   * [Google Speed Tracer](http://code.google.com/webtoolkit/speedtracer/)\n   * [the net panel in Firebug](http://getfirebug.com/net.html)\n   * [Tableau](http://www.tableausoftware.com/)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenlight%2Fwayward-metrics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fenlight%2Fwayward-metrics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenlight%2Fwayward-metrics/lists"}