首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Luigi编程配置

Luigi编程配置
EN

Stack Overflow用户
提问于 2019-04-25 08:27:45
回答 1查看 570关注 0票数 4

对于我的luigi工作流,我使用的配置文件类似于以下内容:

代码语言:javascript
复制
# Luigi logging configuration
[logging]
version = 1
disable_existing_loggers = false

[logging.formatters.simple]
format = "{levelname:8} {asctime} {module}:{lineno} {message}"
style = "{"
datefmt = "%Y-%m-%d %H:%M:%S"

# Luigi contrib configurations
[postgres]
marker-table="luigi_table_updates"

然后从命令中调用luigi,如下所示:

代码语言:javascript
复制
LUIGI_CONFIG_PATH='path/to/luigi.toml' luigi ...

但是,我希望以编程方式调用我的工作流。我可以使用luigi.build方法做到这一点;但是,我尝试像这样传递我的配置路径:

代码语言:javascript
复制
luigi.build(my_tasks, local_scheduler=True, LUIGI_CONFIG_PATH='path/to/luigi.toml')

并得到以下错误:

代码语言:javascript
复制
luigi.parameter.UnknownParameterException: core[args=(), kwargs={'local_scheduler': True, 'LUIGI_CONFIG_PATH': 'path/to/luigi.toml', 'no_lock': True}]: unknown parameter LUIGI_CONFIG_PATH

我假设使用它作为kwarg会将它加载到环境(luigi.buildenv_params)中,这与local_scheduler的加载方式类似。

因此,我的问题是,以编程方式配置luigi的合适方法是什么?

EN

回答 1

Stack Overflow用户

发布于 2019-05-01 02:21:32

我解决了这个问题;不确定是否有更好的方法,但我发现了一个加载配置的方法调用:

代码语言:javascript
复制
import luigi

luigi.configuration.add_config_path('path/to/my-config.cfg')

然而,我没有找到一种方法来指定解析器,而且在阅读了源代码后,我不确定目前是否可能。所以,我刚刚从TOML切换到cfg,一切都很好。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55840241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档