PHP 限制脚本进程数量前言现在的工作中,经常要写一些脚本做一些异步的操作。 一般是大量的数据修改,或者解决部分并发问题。 为了能够稳定的做好数据处理,一般情况下会用定时脚本的方式。 那么问题来了。 可能存在的问题当我们处理大量数据的时候,脚本的执行时间可能很长,或者重复处理某条数据(写错的情况下)。 为了避免数据的重复处理、运行脚本过多导致服务器压力过大等问题,我们需要限制脚本的运行数量。 如何做思路一查询某种标识的进 2021-03-03 PHP PHP
Laravel日志分割前言正式项目当中,我们需要记录一些日志来帮助我们定位、分析问题。 然而,随着业务的发展,线上运营的时间越来越长,单日志文件会变得越来越臃肿。 为了更好的解决单文件日志过大的问题,我们需要采取一些措施。 措施使用 Laravel 提供的 dailyLaravel 提供了 daily 的日志记录形式。我们只需要在 .env 中配置 LOG_CHANNEL=daily 就可以实现我们想要的功能。 记录的 2021-02-26 PHP PHP Laravel
wkhtmltopdf服务前言之前写过一篇 《Lumen生成PDF》 的文章,当时在生成 PDF 的时候,遇到了一些问题,并加以解决了。 前段时间,项目组中的小伙伴发现了一个好项目 wkhtmltopdf/wkhtmltopdf。 可以直接将 HTML 转换成 PDF,这跟我们之前的诉求一致。 Docker版KnpLabs/snappy 是基于 wkhtmltopdf/wkhtmltopdf 扩展而来的 PHP 项目。 我 2021-02-22 Docker PHP Docker wkhtmltopdf
Git Tag相关本文编写于 2021-02-19,部分观点可能已经过时。 前言Git 也用了五年了,很多命令没用过,git tag 就是其中一个,这次是为了让 hub.docker.com 帮助我构建镜像,才有这方面的诉求去使用这个命令。 命令创建 taggit tag -a tag名称 -m "tag描述" 推送 tag单个推送git push origin tag名称 全部推送git 2021-02-19 Git Git
ELKF日志学习(十四)Kibana基于Sentinl实现钉钉告警前言最好先学习一下 sentinl 的使用,以及 Elasticsearch 的语法。 代码仓库talk-lucky/elkf-study 配置流程如果不熟悉的话,建议先使用 Wizard 来配置一些东西,再转换成 Advanced。 一般分四部分,分别是:输入、条件、行为、其它。 输入这个一般是指定 index,配置一些筛选条件,比如(这是 Advanced 的示例): { 2020-12-30 ELK ELK Kibana Sentinl
ELKF日志学习(十三)Kibana安装Sentinl插件前言低版本的 Kibana 中,想要实现钉钉告警,只能通过第三方插件来实现。 这也就是为什么我们需要使用 Kibana:6.5.4 和 Kibana:7.6.1 来介绍了。 除了第三方插件,Elasticsearch 也可以实现钉钉告警,但是 6.5.4 的版本中,Elasticsearch 不支持 webhook,所以就只能使用插件了。 还有一个用第三方插件的好处就是,免费!免费!免费! Ela 2020-12-29 ELK ELK Kibana Sentinl
ELKF日志学习(十二)Kibana基础介绍前言kibana 是数据分析和可视化平台,通常依赖 elasticsearch 。 因为 Kibana 的配置相对于其它模块相对较少,这里大部分是类似于使用教程。 代码仓库talk-lucky/elkf-study 优点&能力还是直接看官网吧,这个懒得截图了。传送门 注意点配置方面这里分别提供了两个版本的 Dockerfile 配置。 在 Kibana 方面,有点差异。 kibana/ki 2020-12-28 ELK ELK Kibana
ELKF日志学习(十一)Logstash实现钉钉告警(莫当真)前言本来不想写这篇文章的,奈何有人崇尚这个,顺带介绍一下,扩展一下思路。 代码仓库talk-lucky/elkf-study 弊端比如:当 499(HTTP 状态码) 在半小时内出现了 50 次,需要实现告警。 这种情况就不能自定义了,只能说,出现 499 就告警,这个很傻。 麻烦一点的解决方案就是统计后,写入某一个日志文件,然后再根据来源来分辨是否发送告警。 好像有点傻… 毕竟,都已经统计了,直 2020-12-27 ELK ELK Logstash
ELKF日志学习(十)Logstash解析日志成json前言之前大致说了一下 Logstash 的能力。 关于输入输出并不多做介绍了,这里主要讲解一下日志解析部分。 代码仓库talk-lucky/elkf-study Grok原理很简单,就是 正则。 这里有个非常实用的网站 Grok Debugger,可以帮助我们验证调试解日志的正则。(可能需要自备梯子) 官方有一部分预定义 grok 的表达式,可以参考,我们也可以编写一些预定义的表达式供后续使用。 2020-12-26 ELK ELK Logstash
ELKF日志学习(九)Logstash基础介绍前言Logstash 是数据收集引擎,可以对数据进行过滤、分析、丰富、统一格式等操作,存储到用户指定的位置,包含但不限于文件、 elasticsearch 。 代码仓库talk-lucky/elkf-study 配置Logstash 的配置分为 3 部分,输入、过滤器 和 输出。 input { # 这里填写输入部分 } filter { # 这里填 2020-12-25 ELK ELK Logstash