{"id":14071028,"url":"https://github.com/Lt0/sysmon","last_synced_at":"2025-07-30T09:32:27.684Z","repository":{"id":34212145,"uuid":"131862176","full_name":"Lt0/sysmon","owner":"Lt0","description":"A B/S mode system monitor for linux (demo http://199.247.1.240:2048)","archived":false,"fork":false,"pushed_at":"2022-12-08T02:21:53.000Z","size":4009,"stargazers_count":117,"open_issues_count":21,"forks_count":31,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-11-22T20:41:46.284Z","etag":null,"topics":["android","chartjs","iso","javascript","linux","mac-os","materia","monitor","pwa","system","vue","vuejs2","vuetify","webapp","windows"],"latest_commit_sha":null,"homepage":"","language":"Vue","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/Lt0.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}},"created_at":"2018-05-02T14:25:00.000Z","updated_at":"2024-01-12T01:09:20.000Z","dependencies_parsed_at":"2023-01-15T05:19:55.487Z","dependency_job_id":null,"html_url":"https://github.com/Lt0/sysmon","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lt0%2Fsysmon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lt0%2Fsysmon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lt0%2Fsysmon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Lt0%2Fsysmon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Lt0","download_url":"https://codeload.github.com/Lt0/sysmon/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228119181,"owners_count":17872443,"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":["android","chartjs","iso","javascript","linux","mac-os","materia","monitor","pwa","system","vue","vuejs2","vuetify","webapp","windows"],"created_at":"2024-08-13T07:08:15.532Z","updated_at":"2024-12-04T13:30:32.298Z","avatar_url":"https://github.com/Lt0.png","language":"Vue","funding_links":[],"categories":["awesome-vue [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)","Projects Using Vue.js","Awesome Vue.js [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg) ★101652](https://github.com/sindresorhus/awesome)","Awesome Vue.js [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)","Vue","Open Source [🔝](#readme)"],"sub_categories":["开源","Open Source"],"readme":"\n\u003ca href=\"https://github.com/Lt0/sysmon/blob/master/doc/README-zh.md\"\u003e中文说明\u003c/a\u003e\n\n\n# sysmon\nSysmon is a C/S mode system monitor for Linux distribution. With server side daemon, you can remotely watch usage of your system resources via web browser or clients.\n\nThe server side supports common architecture and distribution. In addition to the browser, we also provide client applications for many system such as android/ios/windows/linux/mac os.\n\n\n\u003cimg src=\"https://raw.githubusercontent.com/Lt0/sysmon/master/doc/img/sysmon-resources.png\" /\u003e\n\n\u003cimg src=\"https://raw.githubusercontent.com/Lt0/sysmon/master/doc/img/sysmon-mobile.png\" /\u003e\n\nFeatures：\n1. Watch CPU, memory, disk, network usage in one page\n2. Support single CPU usage real-time display\n3. Support detailed memory classification display\n4. Support for watching process details(double-click process), including threads, stack per thread, NUMA, SMAPS, etc.\n5. Powerful process filtering\n6. Support system storage status\n7. Detailed and rich description\n8. Watch System status remotely(via IP)\n9. Mobile friendly\n10. Small web UI(only about 350KB)\n11. Support PWA(you can add the web page to Homescreen)\n12. Server side supports common architecture and distribution\n13. Clients support common platform\n14. Monitor multiple servers by one client\n\n\u003cbr\u003e\n\n## Demo\n\nhttp://140.82.31.138:2048\n\n\n\n\u003cbr\u003e\n\n## Platform/Arch Support\nThe server is a daemon service, you can access it via IP:PORT by browser or clients.\n\n### Server Platform\nThe following are the systems that have been tested. In addition, sysmon should be able to run on most distribution:\n\n- Ubuntu 12.04/12.10/14.04/16.04\n- Ubuntu Core 16\n- RHEL 7.1\n- CentOS 7\n- CentOS release 6.5 (Final) (default iptables disables http access，resources network not work)\n- openSUSE Leap 15.0\n\n\u003cbr\u003e\n\nUnsupported system:\n\n- CentOS release 5.4 (Final)\n\n\u003cbr\u003e\n\n### Server Architecture \nThe prebuilt package includes the following architecture:\n\n- x86-64 (sysmon-server-amd64-$version.tar.xz)\n- x86 (sysmon-server-386-$version.tar.xz)\n- arm (sysmon-server-arm-$version.tar.xz)\n- arm64 (sysmon-server-arm64-$version.tar.xz)\n- mips (sysmon-server-mips-$version.tar.xz)\n- mips64 (sysmon-server-mips64-$version.tar.xz)\n\n\u003cbr\u003e\n\n### Clients Platform\nMobile:\n\n- Android: sysmon-android-$version.apk\n- IOS: sysmon-ios-$version.ipa\n\nDescktop:\n- Windows(64 位): sysmon-client-win32-x64-$version.7z\n- Windows(32 位): sysmon-client-win32-ia32-$version.7z\n- Linux(x86 32 位): sysmon-client-linux-ia32-$version.tar.xz\n- Linux(x86 64 位): sysmon-client-linux-x64-$version.tar.xz\n- Linux(arm): sysmon-client-linux-armv7l-$version.tar.xz\n- Linux(arm64/aarch64): sysmon-client-linux-arm64-$version.tar.xz\n- Mac OS: sysmon-client-darwin-x64-$version.tar.xz\n- MAS: ysmon-client-mas-x64-$version.tar.xz\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n# Usage\nThe basic step is to download/compile the application installation package sysmon-server-$arch-$version.tar.xz. Unzip it into any directory, go to the extracted directory, execute sysmon, and then access the running service via browser.\n\n\u003cbr\u003e\n\n## Download\nhttps://github.com/Lt0/sysmon/releases\n\nor\n\nhttps://pan.baidu.com/s/1EKfi2553dXZFvMWCkr60xQ\n\n\u003cbr\u003e\n\n## Deploy Server Side\n### Native Application\nDownloading sysmon-server-$arch-$version.tar.xz to your server and then unpack it and run sysmon\n```\ntar Jxvf sysmon-server-$arch-$version.tar.xz \ncd sysmon\nsudo nohup ./sysmon \u0026\n```\nAfter running, access the service by accessing localhost:2048 via a browser.\n\nNote:\nYou need to manually re-execute the sysmon after restarting the system. If you want to start sysmon when booting, please check start onboot section.\n\n\u003cbr\u003e\n\n### Container\nNote: The container version is not ready yet, the following steps is just for testing.\n\nOnce you get container version of sysmon, run it by this way:\n```\nsudo docker run --name sysmon --restart=always -d -p 4096:2048 -v /proc:/hproc --privileged -it sysmon\n```\nAfter running，access the service by accessing localhost:4096 via a browser.\n\n\u003cbr\u003e\n\n### Start onboot\nThe sysmon server support upstart/systemd framworks to start onboot.If you want to start sysmon on boot, please run install.sh scripts in the extracted directory.\n\n\u003cbr\u003e\n\n### Enable https\nThe server side of sysmon is based on beego framework，you can edit conf/app.conf to enable https (CertFile and KeyFile is your own cert and key)：\n```\nEnableHTTPS = true\nHTTPSPort = 2049\nHTTPSCertFile = xxx.cert\nHTTPSKeyFile = xxx.key\n```\n\nFor more details：\nhttps://beego.me/docs/mvc/controller/config.md\n\n\n\u003cbr\u003e\n\n### configure procfs path\nsysmon depends on procfs to get system info and default path of procfs is /proc. If your procfs path is not /proc, you can configure your procfs path in conf/app.conf:\n```\nprocfs = /myProcPath\n```\n\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n# Develop\n## Setup Develop Environment\nRequire:\n1. golang\n2. node\n3. musl\n```\nsudo apt-get install musl-tools\n```\n\n## Server Side\nOnce the development environment is ready, run command in the project's directory.\n```\nbee run -gendoc=true\n```\nYou can access the backend API by visiting localhost:2048/swagger.\n\nIf you want to debug the front end, you need to start front-end service by referring to the following instructions, and then access localhost:2047 for debugging through the browser.\n\n## Front End\nSee README.md in web directory.\n\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n# Distribute\nFirstly you need to setup a develop environment for sysmon.\n\n## Native Server\nFor the first build, you need to go to the web directory and execute\n```\nnpm run install\n```\n\nAnd then run command in the repository code directory:\n```\n./pack.sh\n```\nThis command will generate Native Application sysmon-server-$arch-$version.tar.gz.\n\n### Build for all supported arch\nWe can only build all supported arch on x64 server, and you need to install musl-tools and docker before building:\n```\n./pack.sh\n``` \n\nIt will generate built package in current directory.\n\nNote:\n  It build amd64/i386/arm64/mips64 by local go compiler, but build arm/mips by docker image lightimehpq/golang-386\n\n\u003cbr\u003e\n\n## Container Server\nRun command in the root path of repository: \n```\nmv sysmon-xxx.tar.xz sysmon-latest.tar.xz\nsudo ./build-docker-image.sh\n```\nThis command require docker and alpine:3.7 image. It will generate a docker image sysmon:latest.\n\n\u003cbr\u003e\n\n## Mobile Client\ncheck \u003ca href=\"https://github.com/Lt0/sysmon/blob/master/client/mobile/README.md\"\u003eclient/mobile/README.md\u003c/a\u003e for details.\n\n\u003cbr\u003e\n\n## Desktop Client\ncheck \u003ca href=\"https://github.com/Lt0/sysmon/blob/master/client/desktop/README.md\"\u003eclient/desktop/README.md\u003c/a\u003e for details.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLt0%2Fsysmon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FLt0%2Fsysmon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FLt0%2Fsysmon/lists"}