目的
要使用Elasticsearch的记录器功能来更好地调试服务器端Groovy脚本代码。
问题总结
无法汇入 org.elasticsearch.common.logging.*
细节
/etc/elasticsearch/scripts
Java客户端中的脚本已经能够通过来成功访问它们Client.update()
。即,文件夹位置应正确。我已经看到了将代码放置在中的建议elasticsearch/config/scripts
,但实际上对我不起作用)import org.elasticsearch.common.logging.*
ESLogger logger = ESLoggerFactory.getLogger('myscript')
但是Elasticsearch日志显示了一个编译器投诉: unable to resolve class org.elasticsearch.common.logging.ESLogger
我检查GitHub上的源代码在这里和ESLogger类是存在的。所以我不知道为什么会这样。
有人import
对上班有建议吗?
原因是在Elasticsearch
2.2中启用
了Java安全管理器进行脚本编写。这意味着您需要遵循规则并配置希望脚本能够访问的类。
为了能够在脚本中进行日志记录,我定义了自己的策略文件并将其设置为JAVA_OPTS,甚至在启动命令中将其设置为-Djava.security.policy=file:///D:/ES/elasticsearch-2.3.1/my.policy
。文件的
最小 内容my.policy
应为:
grant {
permission org.elasticsearch.script.ClassPermission "org.elasticsearch.common.logging.*";
permission org.elasticsearch.script.ClassPermission "org.apache.log4j.*";
};
当然,您需要重新启动ES才能使更改生效。
弹性搜索是用以下主体创建的 下面是elasticsearch中的两种不同元数据 第二记录 现在,在elasticsearch中使用以下查询搜索第一条记录时 查询以搜索第二条记录 第一个查询是给我正确的结果,因为查询"997439"存在于TokenizedDocumentFileName中,但是当我搜索marytest 2条记录时,我得到了下面的响应。 但当我给出文件名和扩展名,即“marytest
问题内容: 我似乎无法让Python在子文件夹中导入模块。当我尝试从导入的模块创建类的实例时出现错误,但是导入本身成功。这是我的目录结构: 这是server.py的内容: 和user.py: 错误是:AttributeError:’模块’对象没有属性’用户’ 问题答案: 我相信您需要在Models目录中创建一个名为的文件,以便python将其视为模块。 然后,您可以执行以下操作: 您可以在其中添加
我从用户c##cuongnguyen导出oracle数据库。导出后,我有转储文件,所以我想将此文件导入到另一个用户:mbbank 因此,我运行以下语法: ** imp mbbank/xxxxxx FROMUSER=c##cuongnguyen TOUSER=mbbank file=C:\oracle\export\cuongnguyen-user.DMP; ** 我收到了回复,是关于性格的。 导入
我试图从djangotoolbox.fields使用Listfield,但它给我一个错误说: 我做错了什么?
简介 通过 Cocos Creator 主菜单中 文件->导入项目 的子菜单,可以导入其他编辑器中的项目。目前支持导入的编辑器项目有: Cocos Studio 项目(*.ccs 文件) Cocos Builder 项目(*.ccbproj 文件) 相应的菜单项如图: 操作步骤说明 导入其他编辑器项目的操作步骤如下: 点击相应的菜单,打开文件选择对话框。 选择对应扩展名的文件,即可开始导入。如图: