我有大量的
quantum
工作,它们会在我的iex
内产生日志垃圾。从我的 phoenix
应用程序:
# config/dev.exs
config :quantum, MyApp,
cron: [
# Tons of jobs here
]
所以,我希望这部分仅包含在来自 phoenix.server 的配置中,而不包含来自 IEx 的配置。我怎么能这么做呢?
您可以使用
iex
检查 IEx.started?/0
是否正在运行。如果您将其放入 unless
并将 config
调用包装在其中,则仅当 iex
未运行时才会添加配置:
# config/dev.exs
unless IEx.started? do
config :quantum, MyApp,
cron: [
# Tons of jobs here
]
end
我正在使用 Elixir 1.15。就我而言,
IEx.started?
在 false
和 runtime.exs
文件中返回 prod.exs
。我的假设是这是因为这些文件是在 IEx.started?
依赖的任何状态更新之前执行的。
就我而言,在产品上禁用 IEx 中的量子的方法是创建
.iex.exs
文件并删除调度程序进程:
Supervisor.terminate_child(App.Supervisor, App.Scheduler)
Supervisor.delete_child(App.Supervisor, App.Scheduler)