{"id":46128489,"url":"https://github.com/melonsmasher/browserbeat","last_synced_at":"2026-03-02T03:12:14.205Z","repository":{"id":57515050,"uuid":"219827264","full_name":"MelonSmasher/browserbeat","owner":"MelonSmasher","description":"An Elastic beat that sends browser history to an Elastic output.","archived":false,"fork":false,"pushed_at":"2020-01-24T19:24:34.000Z","size":51918,"stargazers_count":17,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-14T14:59:43.923Z","etag":null,"topics":["beats","brave","bravebrowser","browser","browser-history","browserbeat","chrome","chrome-canary","chromium","elastic","elastic-beats","firefox","history","k-meleon","macos","monitor-web-traffic","opera","safari","user-browsing","vivaldi"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MelonSmasher.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-11-05T18:51:27.000Z","updated_at":"2025-04-07T12:41:52.000Z","dependencies_parsed_at":"2022-08-30T01:41:27.481Z","dependency_job_id":null,"html_url":"https://github.com/MelonSmasher/browserbeat","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/MelonSmasher/browserbeat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MelonSmasher%2Fbrowserbeat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MelonSmasher%2Fbrowserbeat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MelonSmasher%2Fbrowserbeat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MelonSmasher%2Fbrowserbeat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MelonSmasher","download_url":"https://codeload.github.com/MelonSmasher/browserbeat/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MelonSmasher%2Fbrowserbeat/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29991319,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-02T01:47:34.672Z","status":"online","status_checked_at":"2026-03-02T02:00:07.342Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["beats","brave","bravebrowser","browser","browser-history","browserbeat","chrome","chrome-canary","chromium","elastic","elastic-beats","firefox","history","k-meleon","macos","monitor-web-traffic","opera","safari","user-browsing","vivaldi"],"created_at":"2026-03-02T03:12:07.424Z","updated_at":"2026-03-02T03:12:14.193Z","avatar_url":"https://github.com/MelonSmasher.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Browserbeat\n\nWelcome to Browserbeat.\n\nBrowserbeat is a lightweight passive solution for web traffic monitoring. Browserbeat gives sysadmins the ability to monitor web traffic on managed computers without an HTTP proxy, packet capture, or DNS server logs.\n\n## Browserbeat compared to:\n\n### DNS server logs\n\n* Data obtained by Browserbeat is much less noisy than DNS traffic since traffic created by system services and other protocols will show up in DNS server logs.\n* You will know if the browser has visited an IP address directly.\n* You'll know the user who made the request not just the client IP\n* You'll know the web browser used to make the request\n* You'll know the operating system used to make the request\n\n### HTTP proxy\n\n* No need to distribute custom certs to monitor HTTPS traffic\n* You'll know the user who made the request not just the client IP\n* If Browserbeat or the output fails, the user's browsing is not interrupted like if a proxy server goes down\n* Less complexity on your network\n \n### Packet Sniffing/Capture\n\n* You'll know the user who made the request not just the client IP\n* Less complexity on your network\n* Depending on the method used for packet sniffing, the user's browsing is not interrupted if a component fails\n\n## Features\n\n* Know the user who made the request\n* Know the IP of the computer\n* Know the hostname of the computer\n* Know the requested hostname\n* Know the URL requested\n* Know the title of the website\n* Know the date \u0026 time the request was made\n* Know the host OS\n* Know the browser that made the request\n* Cross-platform support: Windows, macOS, and Linux\n* Cross-browser support: see list below\n* Output data to all of the standard Elastic Beat outputs\n\n### Browser Support\n\n* :white_check_mark: Chrome (All) - Done\n    * :white_check_mark: Chrome Canary (Windows \u0026 macOS) - Done\n    * :white_check_mark: Chrome Beta (linux) - Done\n    * :white_check_mark: Chrome Dev (linux) - Done\n* :white_check_mark: Chromium (All) - Done\n* :white_check_mark: Firefox (All) - Done\n* :white_check_mark: Safari (macOS) - Done\n* :white_check_mark: Vivaldi (All) - Done\n* :white_check_mark: Opera (All) - Done\n* :white_check_mark: K-Meleon (Windows) - Done\n* :white_check_mark: Brave (All) - Done\n* :white_check_mark: Microsoft Edge - (Windows \u0026 macOS) - Done\n    * :white_check_mark: Microsoft Edge Beta (Windows \u0026 macOS) - Done\n    * :white_check_mark: Microsoft Edge Dev (Windows \u0026 macOS) - Done\n    * :white_check_mark: Microsoft Edge Canary (Windows \u0026 macOS) - Done\n* :sos: Microsoft Edge Legacy - Uses an ESE database anyone know of an ESE DB library for go?\n* :sos: IE 11 - Uses an ESE database anyone know of an ESE DB library for go?\n\nFeel free to suggest more browsers.\n\n# Development\n\nEnsure that this folder is at the following location:\n`${GOPATH}/src/github.com/MelonSmasher/browserbeat`\n\n## Getting Started with Browserbeat\n\n### Requirements\n\n* [Golang](https://golang.org/dl/) 1.7\n\n### Init Project\nTo get running with Browserbeat and also install the\ndependencies, run the following command:\n\n```\nmake setup\n```\n\nIt will create a clean git history for each major step. Note that you can always rewrite the history if you wish before pushing your changes.\n\nTo push Browserbeat in the git repository, run the following commands:\n\n```\ngit remote set-url origin https://github.com/MelonSmasher/browserbeat\ngit push origin master\n```\n\nFor further development, check out the [beat developer guide](https://www.elastic.co/guide/en/beats/libbeat/current/new-beat.html).\n\n### Build\n\nTo build the binary for Browserbeat run the command below. This will generate a binary\nin the same directory with the name browserbeat.\n\n```\nmake\n```\n\n\n### Run\n\nTo run Browserbeat with debugging output enabled, run:\n\n```\n./browserbeat -c browserbeat.yml -e -d \"*\"\n```\n\n\n### Test\n\nTo test Browserbeat, run the following command:\n\n```\nmake testsuite\n```\n\nalternatively:\n```\nmake unit-tests\nmake system-tests\nmake integration-tests\nmake coverage-report\n```\n\nThe test coverage is reported in the folder `./build/coverage/`\n\n### Update\n\nEach beat has a template for the mapping in elasticsearch and a documentation for the fields\nwhich is automatically generated based on `fields.yml` by running the following command.\n\n```\nmake update\n```\n\n\n### Cleanup\n\nTo clean  Browserbeat source code, run the following command:\n\n```\nmake fmt\n```\n\nTo clean up the build directory and generated artifacts, run:\n\n```\nmake clean\n```\n\n\n### Clone\n\nTo clone Browserbeat from the git repository, run the following commands:\n\n```\nmkdir -p ${GOPATH}/src/github.com/MelonSmasher/browserbeat\ngit clone https://github.com/MelonSmasher/browserbeat ${GOPATH}/src/github.com/MelonSmasher/browserbeat\n```\n\n\nFor further development, check out the [beat developer guide](https://www.elastic.co/guide/en/beats/libbeat/current/new-beat.html).\n\n\n## Packaging\n\nThe beat frameworks provides tools to crosscompile and package your beat for different platforms. This requires [docker](https://www.docker.com/) and vendoring as described above. To build packages of your beat, run the following command:\n\n```\nmake release\n```\n\nThis will fetch and create all images required for the build process. The whole process to finish can take several minutes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmelonsmasher%2Fbrowserbeat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmelonsmasher%2Fbrowserbeat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmelonsmasher%2Fbrowserbeat/lists"}