Swoole v4.5.8 版本发布,新增 swoole_error_log 函数

字母哥的博客 2020-11-23 11:07:17 ⋅ 93 阅读

Swoole v4.5.8 版本已经发布了,在这个版本中增加了 swoole_error_log 函数,用户可以手动调用此函数将错误信息输入到日志中。

并且还优化了 Server 的 log_rotation 参数,可能有些小伙伴还不知道这个参数有什么用:

它是用来设置 Server 日志分割,默认不启用,之前的版本仅支持按天分割,在这个版本中支持了按月、按小时和按分钟进行分割。

$server->set([
 'log_file' => 'swoole', 'log_rotation' => SWOOLE_LOG_ROTATION_HOURLY, //每小时
]);

不仅仅是这些,在这个版本中还支持了更多的 cURL 选项,同时修复了由于设置了 CURLOPT_WRITEFUNCTION 所导致的一些问题,以及在处理 content-type header 的时候没有区分名字大小写导致被覆盖问题。

还没有结束,在之后的版本中,将会使用另外的一种方式支持 Hook cURL,敬请期待~

下面来看看此版本的更新日志

更新日志

新增 API

  • 新增 swoole_error_log 函数,优化 log_rotation (swoole/swoole-src@67d2bff) (@matyhtf)
  • readVector 和 writeVector 支持 SSL (#3857) (@huanghantao)

增强

  • 当子进程退出后,让 System::wait 退出阻塞 (#3832) (@matyhtf)
  • DTLS 支持 16K 的包 (#3849) (@matyhtf)
  • Response::cookie 方法支持 priority 参数 (#3854) (@matyhtf)
  • 支持更多的 CURL 选项 (swoole/library#71) (@sy-records)
  • 处理 CURL HTTP header 没有区分名字大小写导致被覆盖问题 (swoole/library#76) (@filakhtov) (@twose) (@sy-records)

修复

  • 修复 readv_all 和 writev_all 错误处理 EAGAIN 的问题 (#3830) (@huanghantao)
  • 修复 PHP8 编译警告的问题 (swoole/swoole-src@03f3fb0) (@matyhtf)
  • 修复 SwooleTable 二进制安全的问题 (#3842) (@twose)
  • 修复 MacOS 下 System::writeFile 追加文件覆盖的问题 (swoole/swoole-src@a71956d) (@matyhtf)
  • 修复 CURL 的 CURLOPT_WRITEFUNCTION (swoole/library#74) (swoole/library#75) (@sy-records)
  • 修复解析 HTTP form-data 时内存溢出的问题 (#3858) (@twose)
  • 修复在 PHP8 中 is_callable() 无法访问类私有方法的问题 (#3859) (@twose)

内核

  • 重构内存分配函数,使用 SwooleG.std_allocator (#3853) (@matyhtf)
  • 重构管道 (#3841) (@matyhtf)

全部评论: 0

    我有话说:

    JavaScript 引擎 V8 发布 8.3 版本,性能提升

    JavaScript 引擎 V8 发布8.3 版本

    Spring Framework 5.3.45.2.13 发布

    Spring Framework 5.3.45.2.13 已发布5.3.4 版本包括 62 项修复和改进,5.2.13 包含 18 项修复和改进。具体如下。 v5.3.4 部分新特性 在

    「开源资讯」MySQL 8.0.22 GA发布,有变化

      MySQL 最新版本 8.0.22 于2020年10月19日正式发布。 主要新变化 改进审计日志:对于JSON格式的日志文件,MySQL企业审计支持使用audit_log_read

    Apache Tomcat 10.0.4、9.0.44 和 8.5.64 发布

    Apache Tomcat 三个分支发布了更新,分别是 10.0.4、9.0.44 和 8.5.64。 Tomcat 10.0.x 系列的目标平台是 Jakarta EE 9。官方表示,Tomcat

    Druid 1.2.4 版本发布,增强 SQL Parser,支持 JDK8 日期类型

    Druid 1.2.4 版本现已发布,这个是一个小的 bug 修复版本,修复了一系列 SQL Parser 的问题,增强对 JDK 8 的支持。 Issues SQL Parser 增强对

    阿里巴巴中间件-Nacos 发布 v0.8.0 Pre-GA版本,安全稳定上生产

    服务注册和服务配置开源项目 Nacos 本周发布v0.8.0 Pre-GA 版本,作为开源项目生命周期中的里程碑版本之一

    CCleaner v5.74.8184 发布:重要更新版本、可自动更新

    CCleaner v5.74.8184 现已发布。该版本的一大重要改进是面向所有用户扩展了自动更新功能。一旦安装了 5.74 或更高版本,用户将不再需要访问网站来更新

    OpenSSH 8.4 发布

    OpenSSH 8.4发布,OpenSSH 是 100% 完整的 SSH 协议 2.0 版本的实现,并且包括 sftp 客户端和服务器支持,它用于远程登录的主要连接工具。OpenSSH 对所有

    【开源资讯】Ant Design 4.8.5 发布,修复组件不能渲染等问题

    Ant Design 4.8.5 发布了。Ant Design 是一套企业级的 UI 设计语言和 React 实现,使用 TypeScript 构建,提供完整的类型定义文件,自带提炼自企业级中后台

    【开源资讯】phpMyAdmin 4.9.7 和 5.0.4 发布,可视化 MySQL 管理后台

    phpMyAdmin 4.9.7 和 5.0.4 发布了。phpMyAdmin 是一个非常受欢迎的 web MySQL 数据库管理工具。它能够创建和删除数据库,创建/删除/修改表格,删除/编辑/新增

    Traefik 2.3.4 发布,HTTP 反向代理与负载均衡工具

    Traefik 2.3.4 现已发布,该版本更新内容如下: Bug fixes: [acme] 更新 go-acme/lego 至 v4.1.2 [k8s

    Deno 1.8.1 发布,基于 V8 的 TypeScript 运行时

    Deno 1.8.1 现已发布,Deno 是 V8 上的安全 TypeScript 运行时。 此版本更新内容如下: fix(cli/ast):将 importsNotUsedAsValues 传递

    Bootstrap 4.6.0 发布,前端开发框架

    Bootstrap 4.6.0 发布了。 v4.6.0 最大的变化是官方对开发环境进行了大的调整以匹配即将正式发布v5 版本。官方表示,目前 v4.x 版本的文档改为基于 Hugo

    「开源资讯」CKEditor 5 v19.1.1 发布新增导出为 PDF 功能

    版本进一步增强了表格功能、改进了小部件周围的键入,以及引入了新的 PDF 导出功能。

    【开源资讯】TypeScript 4.0.5 发布

    TypeScript 4.0.5 发布了,本次更新主要解决了 4.0 版本以来出现的一些问题,提高了整体的稳定性。详细更新如下:BUG 修复1、解决了对于版本 4.0,创建可释放程序包删除

    「开源资讯」Apache Tomcat 8.5.49 发布

    更新说明Apache Tomcat 8.5.49 发布了。8.5.x 替换了 8.0.x,并包含了一些从 9

    pgAdmin 4 v4.29 发布,PostgreSQL 的开源图形化管理工具

    pgAdmin开发团队近期宣布pgAdmin 4的小版本v4.29发布。该版本的pgAdmin 4包含18个bug修复和新特性。想要获取详细的更新列表,请访问版本发布公告。 pgAdmin是一款针对

    【开源资讯】PHP 8 RC 2 发布,第9个测试版本

    PHP 8 RC 2 已经发布,这也是 v8 的第 9 个测试版本。自从进入 Beta 阶段,PHP 8 已进入特性冻结期,不会有特性上的变更。 PHP 8 具体的发布周期已经更改如下

    Swagger接口文档工具:Knife4j 2.0.7 发布,细节优化

    Knife4j前身是swagger-bootstrap-ui,是一个为Swagger接口文档赋能的工具 文档:https://doc.xiaominfo.com 效果(旧版):http