我正在探索EKL堆栈并遇到问题.
我已生成日志,将日志转发到logstash,日志采用JSON格式,因此它们被直接推送到ES,只有Logstash配置中的JSON过滤器,连接并启动指向ES的Kibana.
Logstash配置:
filter {
json {
source => "message"
}
Run Code Online (Sandbox Code Playgroud)
现在我为每天的日志创建了索引,Kibana愉快地显示了所有索引的所有日志.
我的问题是:日志中有许多字段未在Kibana中启用/索引进行过滤.当我尝试将它们添加到Kibana中的文件管理器时,它说"无法搜索未编入索引的字段".
注意:这些不是sys/apache日志.有JSON格式的自定义日志.
日志格式:
{"message":"ResponseDetails","@version":"1","@timestamp":"2015-05-23T03:18:51.782Z","type":"myGateway","file":"/tmp/myGatewayy.logstash","host":"localhost","offset":"1072","data":"text/javascript","statusCode":200,"correlationId":"a017db4ebf411edd3a79c6f86a3c0c2f","docType":"myGateway","level":"info","timestamp":"2015-05-23T03:15:58.796Z"}
Run Code Online (Sandbox Code Playgroud)
像'statusCode'这样的字段,'correlationId'没有被索引.有什么理由吗?
我是否需要向ES提供映射文件,要求它为全部或给定字段编制索引?
我正在编写一个 Selenium Webdriver 脚本,它应该点击一个链接,然后弹出这个模态窗口。
当我尝试访问卡号字段 (//input[@id=pan]) 时,出现 No such element found 异常 org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"id","selector":"pan"}
这是我尝试过但没有运气的代码:
WebElement modal = driver.findElement(By.xpath("//div[@class='ute-pay-now-modalContent']"));
driver.switchTo().frame(modal);
WebElement el = driver.findElement(By.xpath("//input[@id='pan']"));
Run Code Online (Sandbox Code Playgroud)
也试过这个:
WebElement modal = driver.findElement(By.className("ute-pay-now-modalContent"));
driver.switchTo().frame(modal);
WebElement el = driver.findElement(By.xpath("//input[@id='pan']"));
Run Code Online (Sandbox Code Playgroud)
也试过这个:
WebDriverWait block = new WebDriverWait(driver,10);
WebElement modal = block.until(ExpectedConditions.visibilityOfElementLocated(By.className("ute-pay-now-modalContent")));
WebElement pan;
pan = modal.findElement(By.id("pan"));
Run Code Online (Sandbox Code Playgroud)
也试过这个:
driver.switchTo().defaultContent();
Run Code Online (Sandbox Code Playgroud)
也试过这个:
driver.switchTo().activeElement();
Run Code Online (Sandbox Code Playgroud)
有人可以帮我建议如何解决这个问题吗?
我想将所有private_mod版本(根和嵌套级别)更新为1.3.2.有没有这样的方式呢?
注意:每个dependecy(dep-1,dep-2,dep-3)都有自己的dependecy package.json
我能想到的一种方法是:
- 生成shrinkwrap文件npm shrinkwrap
- npm-sharinkwrap.json为所有依赖项手动编辑较新版本的private_mod 文件-
再次安装npm以从shrinkwrap文件安装新软件包
有人可以解释为什么我的Node.js进程占用的内存超过分配的内存吗?
我为Nodejs进程分配了4G内存(64位计算机最大支持,根据Nodejs doc),但是我看到过程接触5.6g的RSS内存(高于我指定的4g)
这就是我运行流程的方式
node -max-old-space-size=4096 processName.js
node.js ×2
dependencies ×1
javascript ×1
kibana ×1
linux ×1
logstash ×1
memory ×1
modal-dialog ×1
npm ×1
selenium ×1