{"id":24835737,"url":"https://github.com/john-data-chen/grafana_slack_auto_report","last_synced_at":"2025-07-16T01:38:48.492Z","repository":{"id":89332868,"uuid":"556100561","full_name":"john-data-chen/grafana_slack_auto_report","owner":"john-data-chen","description":null,"archived":false,"fork":false,"pushed_at":"2022-12-21T05:09:20.000Z","size":17,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-23T15:52:08.258Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/john-data-chen.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-10-23T03:45:45.000Z","updated_at":"2022-10-23T04:01:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"f8e2c579-987b-433c-8ec9-617e8a88dc04","html_url":"https://github.com/john-data-chen/grafana_slack_auto_report","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/john-data-chen/grafana_slack_auto_report","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/john-data-chen%2Fgrafana_slack_auto_report","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/john-data-chen%2Fgrafana_slack_auto_report/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/john-data-chen%2Fgrafana_slack_auto_report/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/john-data-chen%2Fgrafana_slack_auto_report/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/john-data-chen","download_url":"https://codeload.github.com/john-data-chen/grafana_slack_auto_report/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/john-data-chen%2Fgrafana_slack_auto_report/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265474370,"owners_count":23772323,"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":"2025-01-31T04:51:34.205Z","updated_at":"2025-07-16T01:38:48.429Z","avatar_url":"https://github.com/john-data-chen.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Grafana Slack Auto Report\nthis is the crawler mimic a mobile browser to **get screenshots in Grafana Dashboard then send to slack** \u003cbr /\u003e\n\n# Why should we use this?\nGrafana Reporting Tools with powerful functions, which cost ranges from **$99/mo to $3,500/mo** \u003cbr /\u003e\nwe only need **simple screenshots and auto report to slack daily** \u003cbr /\u003e\n\n## how to create a slack webhook\nplease see \u003chttps://api.slack.com/methods/files.upload\u003e to get more details \u003cbr /\u003e\nfind your slack app in \u003chttps://api.slack.com/apps\u003e \u003cbr /\u003e\nadd incoming-webhook \u003cbr /\u003e\nadd incoming-webhook and files:write in app scopes \u003cbr /\u003e\ninstall app to slack workspace \u003cbr /\u003e\nfind slack channel ID in channel details \u003cbr /\u003e\nwrite Bot OAuth Token and channel ID in conf.ini \u003cbr /\u003e\ninvite bot to channel \u003cbr /\u003e\n\n## based on platform to change crop sizes\ncrop sizes are determined by : platform.system() \u003cbr /\u003e\nif it is Darwin, meaning you use a mac \u003cbr /\u003e\nif it is Linux, meaning you use a Linux \u003cbr /\u003e\n\n## how to use\npython: 3.8 \u003cbr /\u003e\ndefault OS = ubuntu 20.04 LTS, you can use other Linux, if you know how to use its commands \u003cbr /\u003e\n`sudo apt install python3-venv` \u003cbr /\u003e\nneed to install google-chrome, chromedriver is not needed because of webdriver-manager installed \u003chttps://skolo.online/documents/webscrapping/#step-1-download-chrome\u003e \u003cbr /\u003e\n`python3 -m venv ./venv` \u003cbr /\u003e\n`source ./venv/bin/activate` \u003cbr /\u003e\n`pip install -r requirements.txt` \u003cbr /\u003e\n`python main.py` \u003cbr /\u003e\n\n## conf.ini\nconf.ini which has username and password, it won't be in repository \u003cbr /\u003e\nyou have to create this file by yourself \u003cbr /\u003e\n\n```\n[credential]\nurl=https://github.com/\nemail=optional\npassword=optional\nchannel=channel ID\ntoken=token of you slack app\n```\n\n## crontab\nsend screenshots to slack AM 09:30 everyday \u003cbr /\u003e\n30 9 * * * cd /home/john_chen/crawler_daily_jobs \u0026\u0026 /home/john_chen/crawler_daily_jobs/venv/bin/python /home/john_chen/crawler_daily_jobs/main.py \u003e/dev/null 2\u003e\u00261 \u003cbr /\u003e\n\n## how to fix chrome didn't show characters correctly\nsudo apt-get install fonts-noto-cjk \u003cbr /\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohn-data-chen%2Fgrafana_slack_auto_report","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohn-data-chen%2Fgrafana_slack_auto_report","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohn-data-chen%2Fgrafana_slack_auto_report/lists"}