我想将Elasticsearch索引与SQL数据库的内容同步.Elasticsearch JDBC河满足了我的所有要求,但在文档中据说该插件已被弃用.
我不想使用以后几年不支持的工具.有哪些替代方案?
在河流的文件中,据说:
注意,JDBC插件不仅是一个河流,而且是一个独立的模块.由于不推荐使用Elasticsearch river API,因此这是一项重要功能.
为什么它是一个重要的特征?这是否意味着尽管有人弃用,我仍然可以无限期地使用它,例如使用支线而不是河流?
目前使用Elastic Beanstalk运行Docker容器,我需要将重要信息作为环境变量传递给我的容器.
我目前的Dockerrun.aws.json看起来像这样:
{
"AWSEBDockerrunVersion": "1",
"Image": {
"Name": "b2boost/rabbitelasticdockstash",
"Update": "true"
},
"Ports": [
{
"ContainerPort": "80"
}
],
"environment": [
{
"name": "RABBITMQ_HOST",
"value": "RABBITMQ_HOST"
},
{
"name": "RABBITMQ_PASSWORD",
"value": "RABBITMQ_PASSWORD"
},
{
"name": "RABBITMQ_USER",
"value": "RABBITMQ_USER"
},
{
"name": "RABBITMQ_VHOST",
"value": "RABBITMQ_VHOST"
},
{
"name": "ELASTICSEARCH_HOST",
"value": "ELASTICSEARCH_HOST"
},
{
"name": "ELASTICSEARCH_PASSWORD",
"value": "ELASTICSEARCH_PASSWORD"
},
{
"name": "ELASTICSEARCH_PORT",
"value": "ELASTICSEARCH_PORT"
},
{
"name": "ELASTICSEARCH_PROTOCOL",
"value": "ELASTICSEARCH_PROTOCOL"
},
{
"name": "ELASTICSEARCH_USER",
"value": "ELASTICSEARCH_USER"
}
],
"Volumes": [
], …Run Code Online (Sandbox Code Playgroud) 我们有一个静态文件的Web服务器(css/js/images).我们从Grails命令获取war并从应用程序中删除静态web-app内容(在build.xml中).我认为资源将被重定向到static/js /或static/css /但它抱怨js /或/ css /无法找到.
我们不希望在应用程序和Web服务器下有重复项.如何强制Grails查看ApplicationResources.groovy中的外部目录?
仅当文件已存在于"应用程序"下时,Web服务器才会覆盖静态内容.
有没有办法告诉logstash从Elasticsearch删除/更新一些日志条目?似乎Logstash可以索引文档,但我没有找到可以进行更新/删除操作的证据.
如果可能,我们可以想象我们可以在Elasticsearch上"记录"操作并使用Logstash在Elasticsearch中批量输出它们.这样,程序员就不必创建在Elasticsearch上进行批量操作的机制.
让我们假设我运行了一个Logstash实例,但是想要干净利落地停止它,例如改变它的配置.
如何在确保完成将批量发送到Elasticsearch的同时停止Logstash实例?我不想在停止logstash时丢失任何日志.
使用 IDEA 并尝试启动以下代码:
package com.myCompany.routing.spring
import com.dropbox.core.DbxRequestConfig
import grails.util.Holders
import spock.lang.Specification
class DropboxSpringConfigSpec extends Specification {
def grailsApplication=Holders.grailsApplication
def "It instantiates and configures the dropboxRequestConfig component"() {
given:
def ctx = grailsApplication.mainContext
//do stuff...
}
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
java.lang.NullPointerException:无法获取空对象上的属性“mainContext”
在 com.myCompany.routing.spring.DropboxSpringConfigSpec.It 实例化并配置 dropboxRequestConfig 组件(DropboxSpringConfigSpec.groovy:20)
我最近拉动了我的 VCS,所以代码应该可以工作。
当作为 Grails 测试运行测试时,我收到以下错误:
错误 | 2015-03-04 13:32:00,989 [localhost-startStop-1] 错误 context.GrailsContextLoader - 初始化应用程序时出错:Config.groovy 中缺少配置:connection.uri。
我想在我的Elasticsearch实例中使用Kibana.下载了最新的Kibana实例后,我意识到它与我的Elasticsearch版本不兼容:
Kibana:此版本的Kibana在所有节点上都需要Elasticsearch 1.4.4或更高版本.我在您的集群中发现了以下不兼容的节点:Elasticsearch v1.3.1
哪里可以找到哪些版本的Kibana与哪个版本的Elasticsearch兼容?
我决定在Windows PC上同时安装python 2和python 3。Python 3包含在Anaconda中,并且在安装Anaconda之后可以正常工作。
成功创建python 2环境后:
conda create --name py27 python=2.7
Run Code Online (Sandbox Code Playgroud)
我注意到在C:\ Users \Hélain\ IT \ Anaconda3 \ envs \ py27中尚未创建python.py文件。
在终端中键入python会启动python 3 python,并且py27不被视为命令。激活或禁用环境不会更改此行为。
键入python的结果:
C:\Users\Hélain>activate py27
Deactivating environment "C:\Users\Hélain\IT\Anaconda3"...
Activating environment "C:\Users\Hélain\IT\Anaconda3\envs\py27"...
[py27] C:\Users\Hélain>python
Python 3.4.1 |Anaconda 2.1.0 (64-bit)| (default, Sep 24 2014, 18:32:42) [MSC v.1
600 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
Run Code Online (Sandbox Code Playgroud)
如何在环境的版本和软件包中运行python?
我想在三元表达式中使用第一个参数的值来执行以下操作:
a() ? b(value of a()) : c
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?a是一个运行多次且返回列表的代价很高的函数.如果列表为null,我需要进行不同的计算.我想用三元表达来表达它.
我尝试过这样的事情:
String a()
{
"a"
}
def x
(x=a()) ? println(x) : println("not a")
Run Code Online (Sandbox Code Playgroud)
但它很难看......
我目前正在尝试在Spyder上使用带有Python的LinkedIn API,但只是导入模块会引发错误:
from linkedin import linkedin
Run Code Online (Sandbox Code Playgroud)
错误:
runfile('SOME_PATH/LinkedIn/main.py',wdir ='SOME_PATH/LinkedIn')UMD已删除:凭据
文件"SOME_PATH\linkedin.py",第294行除外(requests.ConnectionError,requests.HTTPError),错误:
SyntaxError:语法无效