问题标签 [foselasticabundle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
862 浏览

symfony - 用于弹性搜索的 Cron 作业(fos 弹性捆绑包)

我有一个 cron 作业,它每 2 分钟在 Ubuntu linux 服务器 LTS 12.0.04 上运行一个 shell 脚本来构建弹性搜索索引,下面是 shell 脚本:

当此脚本通过 cron 作业运行时,它似乎给出了如下所示的输出,其中“填充网站/文档,100.0% (30/30),144 个对象/秒”的数量更多

当我手动运行脚本时,它的对象计数较少,如下所示:

有人可以建议为什么会发生这种不一致的行为,是否需要在 shell 脚本中添加一些东西,请指教,thnx。

0 投票
1 回答
2209 浏览

symfony - FOSElasticaBundle 问题在 cron 作业中运行填充命令

我在 Linux 中构建了一个 cron 作业,每 5 分钟运行一次以下命令来更新我的弹性搜索索引

我有一个用于文档附件的嵌套对象映射,如下所示:

它可以正常索引我在数据库中的文档并且没有问题,除了附件。cron 作业运行时它不会索引附件,但如果我手动运行填充命令,它将索引我的附件。这真的很奇怪,把我搞混了。

另一件事可能有助于找到解决方案:我在 Windows 机器中构建了相同的计划任务来运行命令,它可以正常工作

如果您能提供帮助,请不胜感激

0 投票
0 回答
289 浏览

elasticsearch - FOSElasticaBundle 过滤掉具有特定属性的实体

我已经设置了索引 InstagramShopPictures 的 FOSElasticaBundle,它具有以下属性:

我如何在 elasticsearch(或 FOSElasticaBundle)中指定我想过滤掉结果,以便只有具有 A 类别的结果,其中 A 是用户指定的 InstagramPictureCategory。这可以在弹性中过滤掉吗?

0 投票
3 回答
4767 浏览

php - Symfony 2.4 从控制器执行命令

我想从我的控制器执行命令 fos:elastica:populate。

我尝试了该代码,但它不起作用,我得到 error = 1 the var_dump show ""

有任何想法吗 ?

我尝试不同的代码......

它说:“不存在“无交互”选项。在 PopulateCommand 中的 Input ->getOption ('no-interaction') 处。

如果我更改我的代码:
$input = new StringInput('--no-interaction');

它说:'“--no-interaction”选项不存在。' 在
'ArgvInput -> addLongOption('无交互',null)'

0 投票
1 回答
174 浏览

symfony - 使用 FOSElasticaBundle 多次搜索关键字

如何使用原始关键字和转换后的关键字进行搜索?我用 Elastica 索引了这样的数据:

现在,当人们想搜索关键字phòng时,我也想搜索关键字phong(从 转换而来phòng),但前者的得分应该高于后者。

如何使用 FOSElasticaBundle 或 ElasticSearch 做到这一点?

0 投票
1 回答
305 浏览

symfony - FOSElasticaBundle 索引隐藏对象

我已经安装了 FOSElasticaBundle,我的配置fos_elastica.yml如下:

坚持is_indexable_callback工作。但是当我运行时fos:elastica:populate,即使是隐藏对象也会创建索引。

如何仅索引活动对象?也许使用分析器或类似的东西?

提前致谢!

0 投票
1 回答
408 浏览

symfony - FOSElasticaBundle 结果与 Doctrine 结果不同?

为什么以下查询返回不同的结果?更多细节

  • 我想获得所有活跃的帖子,按 tttAt 降序排列。
  • Doctrine2 返回我的预期结果,但不返回 FOSElasticaBundle
  • Doctrine2 返回所有记录,但 FOSElasticaBundle 仅返回 10 个第一条记录,但请忽略这一点,因为即使来自 Doctrine 的前 10 条记录也与来自 FOSElasticaBundle 的记录不同。

FOSElasticaBundle 查询:

教义2查询:

0 投票
2 回答
1149 浏览

symfony - Doctrine2 和 FOSElasticaBundle 之间的同步不是实时的?

我有/posts列出最新 10 个活跃帖子的网址。当我编辑最后一篇文章(这 10 篇中的第一篇)时,更改似乎不会实时同步到 elasticsearch。

这是我的代码:

执行上述代码后,我将被重定向到,/posts但最后一个刚刚编辑且状态更改为已删除的帖子仍然被列为最新的 10 个活动帖子(这绝对是错误的)。只有当我刷新页面 ( /posts) 时它才会消失。

代码/posts

我的映射:

有人可以解释一下为什么以及如何解决这个问题吗?

更新:如果我使用 xdebug 将重定向延迟大约 1 或 2 秒,则该帖子将不再列出/posts。所以我客人说 ElasticSearch 没有足够的时间重新索引。有什么想法或解决方案吗?

0 投票
1 回答
991 浏览

symfony - FOSElasticaBundle 索引使 Symfony 停止运行

使用 FOSElasticaBundle 在 ElasticSearch 中建立索引不起作用。

这是来自我的配置(app/config/config.yml):

当我注释掉所有这些,使事物不在 ES 中被索引时,一切都会正常工作。但是当它出现在 config.yml 文件中时,并且我使用表单发布实体时,计算机爱好者会发疯两分钟,并且将返回以下响应:

“FatalErrorException:错误:超过 120 秒的最大执行时间”

所以我们在宇宙中是孤独的......

当我更改 config.yml-settings 以便我发布的特定实体不在被索引到 ES 的实体中时,一切都会正常工作,但是在 ES 中仅索引一个数据库行就足以让服务器似乎停了下来。

如果数据库为空,php app/console fos:elastica:populate-command 将完成,并且我还让它工作一两次,其中一个数据库行被索引到 ES,但是即使数据库中的数据量非常少,风扇也会疯狂地运行几分钟而没有过去Resetting website(运行填充命令时终端打印的第一行)。

可能有助于理解问题所在的事情:

  • 我之前已经在这个项目中成功地进行了 ES 集成。索引数据库,索引添加到数据库中的新事物,在 ES 中搜索——一切看起来都像是一种魅力。但是 ES 集成被保存在一个特定的 git-branch 上,该分支之前没有与主项目合并,现在它不再工作了。

  • 在将 ES 集成分支与 master-branch 合并之前,master-branch 已经使用了 FOSRestBundle。

  • 团队中拉出主分支的其他人也遇到了同样的问题,所以似乎问题出在项目代码上,而不是我的 ElasticSearch 节点(虽然我不能确定)。

你们中有人知道可能出了什么问题吗?任何帮助将不胜感激!

如果更多信息或更多代码部分可以帮助确定问题所在,我当然很乐意为您提供。

0 投票
2 回答
2711 浏览

symfony - 在 symfony2 上使用弹性搜索(FOSElasticaBundle)索引计算字段

我有一个“文章”实体,它与实体“率”有一对多的关系。

我的文章已经被索引了。我想将文章的平均费率添加到索引中(使用与文章相关的“费率”实体计算),我不知道如何执行此操作,如果新费率是,则必须更新平均费率创建的。

对于 config.yml 中的映射:

对于速率实体映射: