【问题标题】:Most efficient way to log curl responses (html)记录 curl 响应的最有效方法 (html)
【发布时间】:2012-12-20 13:10:36
【问题描述】:

我有一个使用 curl 登录网站的 php 脚本。 我需要记录所有 http 响应,以便跟踪错误。

问题:每次登录都包含多个 http 请求/响应,总计约 26 000 行。将其保存在文本文件中使我很难找到所需的内容。

将所有内容都记录在 mysql 数据库中是否合理?

澄清: 将大型 html 文档存储在 mysql 数据库中是个好主意吗? 在 mysql 中存储 html/javascript/css 是否存在任何问题? 什么数据类型合适?

【问题讨论】:

  • 我们如何判断登录数据库是否比文本文件更好?请澄清您的问题。
  • 我自己没有尝试过,但是请查看 MySQL 的 ARCHIVE 存储引擎。请注意,您不能从 ARCHIVE 表中删除单个记录,但可以删除整个表的内容。它也不支持索引,这对于简单的日志表来说并不是什么大问题。

标签: php mysql curl


【解决方案1】:

您可以将所有文本记录到任何文件中,然后使用 grep 过滤您需要的任何内容

如果您将所有数据写入数据库,则会导致硬件负载更高,然后只需将所有内容都记录到文件中

【讨论】:

    【解决方案2】:

    这取决于上下文。

    文件系统通常是存储大中型数据集的更好地方,您不会经常在其中更新/搜索。 OTOH PHP(和大多数语言都会想到它)不支持复杂的锁定机制来优雅地处理对文件的并发访问。

    每次登录由多个 http 请求/响应组成,总计约 26 000 行

    有多少请求?

    将其保存在文本文件中让我很难找到所需的内容。

    为什么在收到 HTTP 响应时不提取所需的位?

    您为什么认为将其转储到数据库中会帮助您提取所需的位?

    【讨论】:

    • 每次登录包含大约 10 个请求。我正在提取我需要的位,但有时当网站更改我的脚本时,我找不到这些位。因此,我认为存储该站点的所有输出会很好。
    • 将请求转储到数据库中可以更轻松地按会话/用户/登录进程的步骤来组织请求/响应。
    • 从未想过使用目录?索引?
    猜你喜欢
    • 1970-01-01
    • 2020-12-07
    • 1970-01-01
    • 1970-01-01
    • 2011-04-25
    • 1970-01-01
    • 2021-09-25
    • 1970-01-01
    • 2019-03-05
    相关资源
    最近更新 更多