python - 如何跨实例存储变量?
问题描述
我正在尝试创建一个滚动 Azure 函数,它从 Elasticsearch 集群中检索索引数据。我正在使用_search和滚动API 来实现这一点,并将在实时数据上执行此操作。目前,我已经设法编写了一个本地脚本,该脚本按时间戳字段对文档进行排序,并使用gt和lt查询参数进行过滤,并保留在名为cursor.py的文件中使用的最后一个时间戳。在每次滚动或运行后的脚本中,我使用以下代码覆盖此日期
file = open("cursor.py", "w")
file.write(f"# Please use format YYYY/MM/DD HH24:MI:SS\nlastPolled = '{lastRowDateOffset}'")
file.close()
但是,当我尝试在 Azure 函数中使用此代码段时,它不会覆盖文件并且不会引发任何错误。然后它继续在下一个运行时获取相同的日期。是否有不同的方法可以在与触发器相同的文件夹中打开和写入文件,或者如果这不是一个选项,那么在 Azure 函数中拥有一个可以调用和覆盖的全局变量的最佳方法是什么?
解决方案
该文件应该已成功创建。
但请注意,该文件不会在函数文件夹中创建,而是在函数应用文件夹下创建。
这是因为__init__.py
未被识别为 python 脚本,您的根文件夹是函数应用程序文件夹而不是函数文件夹。
如果要在特定功能文件夹中创建文件,请执行以下操作:
file = open("yourfunctionname/cursor.py", "w")
推荐阅读
- ruby-on-rails - CableReady 频道的 insert_adjacent_html 的反面?
- reactjs - 我正在尝试从 blueprintjs 实现 Select 组件:TypeError: _this.props.itemRenderer is not a function
- python - Plotly:如何在不更改数据源的情况下更改 go.pie 图表的图例?
- javascript - 嵌套部分滚动 100vh
- amazon-web-services - 我们如何使用 AWS 控制台向 IAM 用户提供单个 EC2 实例的访问权限?
- javascript - Google 登录无法在隐身模式下工作
- r - Delta 方法和聚类标准误
- arrays - 将 bash 表输出映射到数组
- c++ - 为什么编译器/链接器会为我的函数生成“_16386”或“C3304_3”之类的“神秘”名称?
- python - 删除前一个对象后创建新的 timer_t 对象不起作用