分配变量时如何避免显示 API 查询的结果
How to avoid displaying the results of an API query when assigning a variable
我正在使用 google-api-client
gem 与 Google 日历交互。
保存这样的事件列表时:
@events = calendar.list_events(@tmpcalendar)
calendar.list_events(@tmpcalendar)
的输出巨大。我只想将结果保存到@events
(不需要显示大量内容)。
我试过:$output.close
,重定向到 /dev/null
,附加 ;nil
;但无论如何都会显示巨大的结果。
要复制这个(使用有效的解决方案),您可以
large_text = <<~EOS
...huge text here
...huge text here
...huge text here
...
...huge text here
EOS
eventos_good = large_text ; nil # Assigns the content, does not display it
eventos_annoying = large_text # Assigns the content, but displays the huge text
这适用于那种情况,但不适用于上述情况(API 调用)。
是否可以避免仅针对上述变量赋值的巨大输出?
谢谢。
根据 to the docs,Google API gem 默认启用调试日志记录。要减少输出,请将记录杆设置为更高的值:
Google::Apis.logger.level = Logger::FATAL
# INFO, WARN, ERROR, FATAL each decrease the output.
# FATAL is the most restrictive.
从您的代码看来,您正在使用 Google API 客户端 gem?哪个版本?
如果您没有在 Rails 应用程序中使用此 gem,那么它将默认所有日志记录到 $stdout
:https://github.com/googleapis/google-api-ruby-client/blob/1135e74c4896d4ec8aa02c14e3532d9a14514815/lib/google/apis.rb#L34-L40
如果您想完全停止记录,请覆盖记录器:
require 'logger'
Google::Apis.logger = Logger.new(nil)
我正在使用 google-api-client
gem 与 Google 日历交互。
保存这样的事件列表时:
@events = calendar.list_events(@tmpcalendar)
calendar.list_events(@tmpcalendar)
的输出巨大。我只想将结果保存到@events
(不需要显示大量内容)。
我试过:$output.close
,重定向到 /dev/null
,附加 ;nil
;但无论如何都会显示巨大的结果。
要复制这个(使用有效的解决方案),您可以
large_text = <<~EOS
...huge text here
...huge text here
...huge text here
...
...huge text here
EOS
eventos_good = large_text ; nil # Assigns the content, does not display it
eventos_annoying = large_text # Assigns the content, but displays the huge text
这适用于那种情况,但不适用于上述情况(API 调用)。
是否可以避免仅针对上述变量赋值的巨大输出?
谢谢。
根据 to the docs,Google API gem 默认启用调试日志记录。要减少输出,请将记录杆设置为更高的值:
Google::Apis.logger.level = Logger::FATAL
# INFO, WARN, ERROR, FATAL each decrease the output.
# FATAL is the most restrictive.
从您的代码看来,您正在使用 Google API 客户端 gem?哪个版本?
如果您没有在 Rails 应用程序中使用此 gem,那么它将默认所有日志记录到 $stdout
:https://github.com/googleapis/google-api-ruby-client/blob/1135e74c4896d4ec8aa02c14e3532d9a14514815/lib/google/apis.rb#L34-L40
如果您想完全停止记录,请覆盖记录器:
require 'logger'
Google::Apis.logger = Logger.new(nil)