【问题标题】:Client bandwidth usage with Ruby's net/httpRuby 的 net/http 的客户端带宽使用情况
【发布时间】:2012-10-01 19:58:15
【问题描述】:

我正在尝试跟踪 ruby​​ 中单个请求的带宽使用情况,以查看我的网络使用量有多少被分配给不同的 API 调用。

我在 net/http 或 ruby​​ 套接字类(TCPSocket 等)中找不到任何东西,它们似乎有一种不错的方法来做到这一点,而无需进行大量猴子修补。

我在 linux 上找到了许多有用的工具来执行此操作,但是它们都没有给我提供在标头处检查 http 请求内部的粒度(所以我可以找出我们正在请求的 url)。我使用的工具是 vnStat 和 ipfm——它们是很好的系统带宽或主机/网络监控。

理想情况下,我想在 ruby​​ 代码中做一些事情来跟踪发送/接收的数据。我认为如果我可以获取原始标头并将该长度添加到正文长度以进行传输和接收,那将是 Good Enough™。

【问题讨论】:

  • WireShark 将让您深入研究这些 HTTP 标头。您还应该能够使用TCPDump 来完成它,并且您可能可以从 Ruby 作为子 shell 驱动 TCPDump。

标签: ruby linux networking


【解决方案1】:

你能用New Relic for Ruby吗?它具有出色的网络使用/api调用可视化/图表。

【讨论】:

  • 不这么认为。这适用于 ruby​​ 客户端应用程序,而不是 Web 应用程序。
【解决方案2】:

使用Faraday 编写一个中间件来跟踪这一点似乎很容易。

【讨论】:

    猜你喜欢
    • 2020-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-29
    • 1970-01-01
    相关资源
    最近更新 更多