标签:search 运行 邮件报警 比例 比较 三方 精确 err 邮件
服务稳定性及应用防护方案基本监控推荐使用Zabbix,开源分布式企业级监控系统,能满足目前我们监控的需求
a. 系统监控,包括CPU、内存、磁盘、网络等,能够对系统级别的风险进行报警,目前已经实现并线上运行
b. 服务进程及端口监控,能够监控服务异常退出,目前已经实现并线上运行
c. 自定义脚本程序模拟接口登陆访问结合Zabbix监控日志文件功能,能够对自定义的错误进行报警,目前已经实现并线上运行
d. 以上默认系统监控会自动添加,服务进程端口及自定义监控有需要时添加
日志收集推荐使用Elastic Stack协议栈,可以满足收集海量日志需求,而且便于后续分析、报表、报警操作
a. 日志包括服务正常访问日志及错误日志
b. 访问日志可以收集客户端IP、响应时间、HTTP状态码、发送字节、Referer、Agent等,也可以自定义字段
c. 错误日志可以收集自定义字段错误字段,例如登陆失败、连接超时、后端无响应等
d. 以上需要提前准备好日志及定义好日志字段
a. 访问日志指标,例如HTTP状态码统计、响应时间分布、其他字段统计
b. 错误日志指标,例如一段时间内某某错误出现的次数、一段时间内各项错误比例分布、错误出现趋势、错误出现时间、错误出现区域等
c. 以上都可以通过Elasticsearch支持的Lucene语言或者Kibana Dev Tools编辑DSL语言进行精确或模糊匹配来分析
a. Kibana通过visualize及dashboard来实现饼图、趋势图、表格、直方图、地图、Metric、热力图、Markdown等形式的报表
b. Grafana结合Data Sources及Plugins来实现饼图、趋势图、直方图、Html等形式的报表
a. Elastalert通过Elasticsearch Python API编辑报警策略实现报警,例如一段时间内匹配某项DSL语法结果出现的次数大于或小于某值报警、两段对比时间段内匹配结果的值对比后大于或者小于某一基数、一段时间内匹配的值进行聚合运算后大于或小于某值报警、其他自定义语法获得结果异常报警
b. Grafana可以对趋势设置Alert阈值并通过邮件报警
c. 以上工程量都比较大而且难度系数也不小但都能实现
a. 限速
利用ngx_http_limit_conn_module及ngx_http_limit_req_module模块,首先在http区域里定义好限速限制连接数策略,再在具体的域名上使用,具体限速及限制连接数需要根据实际情况评估,超过的连接会默认直接返回503不转发到袁征
b. 屏蔽IP
方法一使用ngx_http_access_module模块allow、deny控制,缺点是通过remote_addr来屏蔽IP的,支持CIDR等格式地址
方法二使用自定义客户端IP变量$clientRealIp来屏蔽,IP需要写成正则形式的,支持IP穿透,所以通过CDN的域名这种方法也能生效
方法三自定义屏蔽IP,结合Elasticsearch查询异常IP可自动化屏蔽IP,前两种方法易于实现但是只能手动屏蔽
c. 屏蔽reffer
例如屏蔽某些流氓网站友情链接
d. 屏蔽agent
例如屏蔽爬虫agent
e. 屏蔽url
例如屏蔽有漏洞url禁止外部访问
f. 其他自定义
设置故障域,怎样都防不住可以通过error_page功能,转发流量到备用源站
a. 网站管家WAF高级版放在CLB前面
b. 大禹BGP高防放在WAF前面
标签:search 运行 邮件报警 比例 比较 三方 精确 err 邮件
原文地址:http://blog.51cto.com/jerrymin/2309007