如何将cURL详细输出通过管道发送到日志记录模块?

太空牛排

有谁知道如何或是否有可能将cURL详细输出重定向到日志记录模块?现在,详细的输出将全部输出到stdout,但是我想将其输出到logging.debug并将其保存到文件中。

请注意,我不想将所有控制台输出通过管道传输到日志记录。另外,我确实有一个字符串缓冲区来捕获pycurl.WRITEFUNCTION,但是似乎没有捕获VERBOSE输出。

当前代码:

logging.debug('starting setopt_put for url: %s',api_url)
self._podium_curl_setopt_base(api_url.url + api_args)
self._podium_curl.setopt(pycurl.HTTPGET, 1)
self._podium_curl.setopt(pycurl.WRITEFUNCTION, self._string_buffer.write)
self._podium_curl.setopt(pycurl.VERBOSE, True)
self._podium_curl.perform()
logging.info(_string_buffer.getvalue())

谢谢!

漫步瑙塔

curl具有一个DEBUGFUNCTION回调选项,其功能与该WRITEFUNCTION选项类似,不同之处在于它使用VERBOSE输出而不是响应主体进行调用。

官方文件具有一定的参考信息,以及一个简单的例子,你应该能够适应您的需求:

def test(debug_type, debug_msg):
    print "debug(%d): %s" % (debug_type, debug_msg)

c = pycurl.Curl()
c.setopt(pycurl.URL, "http://curl.haxx.se/")
c.setopt(pycurl.VERBOSE, 1)
c.setopt(pycurl.DEBUGFUNCTION, test)
c.perform()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将进程的输出通过管道发送到logger命令和head命令?

如何将pprint模块的输出发送到日志文件

如何将图像从本机模块发送到本机模块?

bash exec将输出发送到管道,如何?

如何将输出发送到stderr?

如何使用管道将“ ls-l”的输出发送到cp命令?

通过配置日志记录驱动程序将Docker容器日志发送到ELK Stack-简单方法

如何将输出从流口水发送到Java

通过Terraform将Docker日志发送到AWS CloudWatch

如何将文件夹的详细信息发送到servlet?

在Kubeflow管道中,如何将元素列表发送到轻量级python组件?

如何将多个日志文件发送到Amazon CloudWatch?

如何将GCS审核日志发送到logstash?

如何将日志从jwilder / nginx-proxy docker映像发送到logstash?

了解如何将输入发送到Bash中的管道

如何将SIGKILL发送到整个管道?

将find的输出发送到stdout并通过管道传递到grep

如何将输出发送到标准输出到字符串

已记录日志-将已归档的日志重新发送到日志记录套接字

如何将日志条目发送到运行日记(系统)的远程服务器

如何将输出发送到日志文件和控制台?

如何将weblogic服务器日志发送到graylog?

Logstash-将输出从日志文件发送到麋鹿

无法将psadmin输出发送到日志

如何将多个命令的输出发送到单个 shell 管道?

如何通过R中的管道将输出发送到特定位置

如何将失败模块的输出发送到文件

通过使用 ansible 模块将命令输出发送到邮件

如何通过管道将命令发送到 grep 并获取退出状态,同时仍将命令输出发送到 stdout 并将错误发送到 stderr?