ruby-on-rails - 带有 Rack-Mini-Profiler 的 Rails 环境变量
问题描述
我试图了解当您?pp=env
在请求的基本 URL 上附加 时,Rails 的“rack-mini-profiler”实际上是如何转储环境变量的。现在我的 Gemfile 已经gem 'dotenv-rails
配置好了,我正在使用 .env.local 来填充一些测试变量。我的问题是,rack-mini-profiler 从哪里获取环境变量?在 Rails 应用程序中填充 env 变量有很多不同的方法,dotenv 就是其中之一。我一直在阅读 rack-mini-profiler 的源代码,但似乎找不到它。我看到dump_env
'profiler.rb' 中的函数,但我看不到这些环境变量是从代码中的何处或如何提取的。它仅通过使用键/值对的 do 循环来显示它们的打印。这是我正在使用的示例应用程序,您可以在此 URL 上查看环境变量: https ://preprod.rtcfingroup.com/?pp=
env 欣赏任何见解。真的试图在低层次上理解这一点。
解决方案
Miniprofiler 实际上并没有做任何事情,因为 Ruby 通过类似于哈希类的ENV
常量公开环境变量。
body << "\n\nEnvironment\n---------------\n"
ENV.each do |k, v|
body << "#{k}: #{v}\n"
end
推荐阅读
- javascript - 如何在 JavaScript 中将导入的函数调用到另一个函数中?
- python - 如何对一行中的值求和?
- python - Dlib 的 simple_object_detector() 运行缓慢
- python - 指定 pandas to_datetime 函数的时区
- python - 使用 XPath 解析 XML (Collada/Dae) 文件
- php - 仅当用户发表了自己的评论时才显示 Wordpress 评论
- kotlin - 实现接口并将参数更改为特定的对象类型
- c# - 电报机器人。如何在发送特定消息后记录用户的响应
- android - Bubblewrap CLI 错误:无法找到或加载主类 com.android.sdklib.tool.sdkmanager.SdkManagerCli
- javascript - 创建没有声明的类