{"id":20542186,"url":"https://github.com/weivea/web-error-report","last_synced_at":"2026-04-22T09:31:21.791Z","repository":{"id":83302819,"uuid":"77007227","full_name":"weivea/web-error-report","owner":"weivea","description":"web前端js错误上报","archived":false,"fork":false,"pushed_at":"2017-01-05T02:28:40.000Z","size":24,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-06T04:29:23.953Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/weivea.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":"2016-12-21T02:06:45.000Z","updated_at":"2018-06-13T13:44:23.000Z","dependencies_parsed_at":null,"dependency_job_id":"9b0f52a6-c7f6-4d58-9bd1-3392d38d7a22","html_url":"https://github.com/weivea/web-error-report","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/weivea/web-error-report","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weivea%2Fweb-error-report","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weivea%2Fweb-error-report/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weivea%2Fweb-error-report/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weivea%2Fweb-error-report/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/weivea","download_url":"https://codeload.github.com/weivea/web-error-report/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weivea%2Fweb-error-report/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32129571,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-22T08:34:57.708Z","status":"ssl_error","status_checked_at":"2026-04-22T08:34:55.583Z","response_time":58,"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-11-16T01:29:42.413Z","updated_at":"2026-04-22T09:31:21.773Z","avatar_url":"https://github.com/weivea.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# web-error-report\nweb端的错误上报系统,基本上还只有基本上报插件、上报接收服务，错误邮件提醒服务，数据存储基于mysql\n\n## Usage\n\n### 数据库建表\n\n```\nCREATE TABLE `err_report` (\n  `id` int(11) NOT NULL AUTO_INCREMENT,\n  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,\n  `url` longtext,\n  `user_agent` longtext,\n  `cookie` longtext,\n  `err_data` longtext,\n  PRIMARY KEY (`id`)\n) ENGINE=InnoDB AUTO_INCREMENT=26187 DEFAULT CHARSET=utf8;\n```\n\n### 服务启动\n\n```\n\ngit clone https://github.com/weivea/web-error-report.git\ncd web-error-report\n\n# 安装依赖\nnpm install\n\n# 压缩插件\ngulp build\n\n# 启动服务\nsh app.sh start\n\n# 当然也可以node index.js\n```\n\n### 错误上报\n\n```\n\u003cscript src=\"/js/reporter/reporterErr_min.js\"\u003e\u003c/script\u003e\n\u003cscript\u003e\n//1.window.onerror被动上报错误，\n\n//2.主动上报\nwindow.webReportErr({\n    msg:'something wrong!!!',\n    srcUrl:\"https://xxx.com\",\n    lineNo:undefined,\n    errDesc:\"这是个测试错误1\"\n})\n\u003c/script\u003e\n\n```\n\n### 错误提醒\n这里采用crontab来跑errorChecker.js，以邮件的形式发送\n\ncrontab配置：\n\n```\n*/5 * * * * path-to/bin/node path-to-dir(项目路径)/modules/errorChecker.js\n\n```\n\n\n### 配置项\n\n```\nconst ENV = {\n  DEV:1,\n  TEST:2,\n  PRODUCT:3\n};\n\nmodule.exports = {\n  env:ENV.DEV,//配置运行环境\n  port:5000,//服务端口号\n  //env:ENV.TEST,\n  ENVTYPE:ENV,\n\n  reportBufferLength:1000000,//缓冲区数据条数的长度\n  reportSQLPoolNum:5,//上报数据入库连接数\n\n  errorCheckTimeLast:300,//单位:秒,表示检测300秒之前的错误记录\n\n  //允许上报的域名配置\n  validDomain:{\n    \"localhost\":true,\n    \"127.0.0.1\":true\n  },\n  //上报数据库\n  reportDb:{\n    host     : '127.0.0.1',\n    port     : '3306',\n    user     : 'root',\n    password : '',\n    database : 'xy_web_err_report'\n  },\n  //邮件账户配置\n  smtpConfig: {\n    host: \"smtp.exmail.qq.com\", // 主机\n    secure: true, // 使用 SSL\n    port: 465, // SMTP 端口\n    auth: {\n      user: \"xxx@xxx.com\", // 账号\n      pass: \"xxx\" // 密码\n    }\n  },\n\n  //邮件发送配置\n  mailOptions: {\n    from: '\"xxxx 👥\" \u003cxxx@xxx.com\u003e', // sender address\n    to: 'yyy@yyyy.com', // list of receivers\n    subject: 'web error report', // Subject line\n    text: 'web前端北京，错误上报 🐴', // plaintext body\n    html: '\u003cb\u003eHello world 🐴\u003c/b\u003e' // html body\n  }\n\n};\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweivea%2Fweb-error-report","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fweivea%2Fweb-error-report","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweivea%2Fweb-error-report/lists"}