小编Sgt*_*t B的帖子

使用Kibana 4复制Kibana 3仪表板

我一直在使用Kibana 3进行事件日志审查大约一年左右,而且效果很好.我可以为不同类型的日志创建不同的仪表板,并为最终用户(IT人员)提供所需的仪表板.

在这些仪表板中,我将有一个日期直方图,饼图,最后是查询中所有文档的表格(无论如何都是前500个).所有这些都在最终用户非常满意的一页中.

我在使用Kibana 4 Beta 3的QA环境中复制它时遇到了麻烦.

我可以创建包含"可视化"的仪表板,这是日期直方图和饼图.我甚至可以做一些很酷的新事物,因为它基于聚合.

但是,我正在努力在仪表板中包含一个文档表.在Kibana 3中,我添加了一个"表格"面板,然后选择我想要查看的字段.看来此功能已被"发现"页面取代.

在Kibana 4中可以做到这一点吗?现在我必须在Dashboard和Discover页面之间切换以获得我需要的东西.此外,如果我单击饼图的一个切片,它会在"仪表板"页面上创建一个过滤器(所有图形都会受到影响),但这不会转换为"发现"页面,因此我必须手动创建过滤器.这有点反直觉,与Kibana 3的日志审查可用性有点分离.

我打赌我只是在这里遗漏了一些东西.希望就是这种情况,有人可以帮我看清楚.谢谢!

elasticsearch kibana

23
推荐指数
2
解决办法
9952
查看次数

通配符搜索在Kibana中不起作用

我有一个字段"警报",其中包含一个包含空格,数字和特殊字符的长字符串.我将此字段设置为"not_analyzed".使用通配符查询我可以发出如下查询并获得我想要的结果.

POST /test-index-snort2/type-snort/_search
{
  "query": {
    "wildcard": {
      "Alert": {
        "value": "ET CNC*"
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我想用Kibana来实现类似的搜索.但是,这样做不会返回结果.我在Kibana的查询显示如下:

Alert:"ET CNC*"
Run Code Online (Sandbox Code Playgroud)

这反过来创建一个query_string查询,如下所示:

"query": {
    "filtered": {
      "query": {
        "bool": {
          "should": [
            {
              "query_string": {
                "query": "Alert:\"ET CNC*\""
              }
            }
          ]
        }
      },
      "filter": {
        "bool": {
          "must": [
            {
              "match_all": {}
            }
          ]
        }
      }
    }
Run Code Online (Sandbox Code Playgroud)

有没有办法通过使用通配符查询的query_string查询在Kibana中获得相同的结果?

以下是Alert字段的映射和条目示例:

"Alert": {
        "type": "string",
        "index": "not_analyzed"
},

"Alert": "ET CNC Palevo Tracker Reported CnC Server TCP group 9 ",
"Alert": "ET CNC …
Run Code Online (Sandbox Code Playgroud)

elasticsearch kibana

15
推荐指数
2
解决办法
3万
查看次数

编译正则表达式时Perl程序泄漏内存

我有一个程序显示出看起来像是内存泄漏,但是我无法跟踪它.我写的测试程序用来证明这个行为很奇怪,我想确保理解为什么.

在该示例中,有两个数组,一个名为regexLeak,另一个名为noLeak.noLeak数组只是使用两个简单的正则表达作为基线.regexLeak数组包含使用字符集的正则表达式.

测试程序获取数组的内容,可能填充正则表达式模式,将其传递给编译正则表达式的函数,并将其放入作为参考传回的数组中.

当"test"数组设置为noLeak时,没有泄漏.当"test"数组设置为regexLeak时,会出现明显的内存泄漏.但是,如果regexLeak数组只包含一个元素,则不会发生泄漏.无论哪个元素都无关紧要.将两个元素放在数组中,然后使用内存从屋顶射出.

#!/usr/bin/perl

use strict;
use warnings;

my @regexLeak;
my @noLeak;

# Leaks only when both elements are added to @regexLeak
push(@regexLeak,'user = ([a-zA-Z0-9-_.@]+)');
push(@regexLeak,'admin = ([a-zA-Z0-9-_.@]+)');

# No leaks
push(@noLeak, 'simpleRegex');
push(@noLeak, 'anotherSimpleOne');

my @test = @regexLeak;

my $compiled = compileRegex(@test);

while (1) {

    $compiled = compileRegex(@test);
    # print scalar @{$compiled}."\n";
    # select(undef, undef, undef, 0.25);
}

sub compileRegex {
    my (@r) = @_;

    my @compiled;

    foreach my $regex (@r) {
        my $c = qr/$regex/;
        push(@compiled,$c);
    } …
Run Code Online (Sandbox Code Playgroud)

regex perl memory-leaks

10
推荐指数
1
解决办法
332
查看次数

具有嵌套聚合的Elasticsearch查询导致内存不足

我安装了Elasticsearch 16GB的内存.我开始使用聚合,但在尝试发出以下查询时遇到"java.lang.OutOfMemoryError:Java堆空间"错误:

POST /test-index-syslog3/type-syslog/_search
{
    "query": {
        "query_string": {
           "default_field": "DstCountry",
           "query": "CN"
        }
    },
    "aggs": {
        "whatever": {
            "terms": {
                "field" : "SrcIP"
            },
            "aggs": {
                "destination_ip": {
                    "terms": {
                        "field" : "DstIP"
                    },
                    "aggs": {
                        "port" : {
                            "terms": {
                                "field" : "DstPort"
                            }
                        }
                    }
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

query_string本身只返回1266次点击,所以我对OOM错误感到有点困惑.

我错误地使用聚合吗?如果没有,我该怎么做才能解决这个问题?谢谢!

elasticsearch

7
推荐指数
1
解决办法
2218
查看次数

Perl Term :: ReadLine :: Gnu信号处理的难点

我正在使用Term :: ReadLine :: Gnu并遇到了信号处理问题.鉴于下面的脚本和发送到脚本的TERM信号,在按下回车键之前,不会触发TERM信号的处理程序.使用Term :: ReadLine:Perl不会发生这种情况.

我已经读过Term :: ReadLine :: Gnu有自己的内部信号处理程序,但坦率地说,我不知道如何使用它们.

我已经回顾了http://search.cpan.org/~hayashi/Term-ReadLine-Gnu-1.20/Gnu.pm#Term::ReadLine::Gnu_Variables尝试将rl_catch_signals变量设置为0,但这没有帮助.理想情况下,我想与Gnu信号处理程序一起工作,但我也会满足于禁用它们.

为了绝对具体,我需要TERM处理程序在接收到信号后触发,而不是等待按下回车键.

任何帮助或建议当然感谢!

#!/usr/bin/perl

use strict;
use warnings;
use Term::ReadLine;

$SIG{TERM} = sub { print "I got a TERM\n"; exit; };

my $term = Term::ReadLine->new('Term1');
$term->ornaments(0);
my $prompt = 'cmd> ';
while ( defined (my $cmd = $term->readline($prompt)) ) {
    $term->addhistory($cmd) if $cmd !~ /\S||\n/;
    chomp($cmd);
    if ($cmd =~ /^help$/) {
        print "Help Menu\n";
    }
    else {
        print "Nothing\n";
    }
}
Run Code Online (Sandbox Code Playgroud)

perl readline signal-handling

5
推荐指数
1
解决办法
621
查看次数

Azure AD Graph API 不包含所有审核事件

当我登录到“安全与合规”页面并执行审核日志搜索时,我会看到我希望看到的事件,例如登录事件和邮箱登录(启用了邮箱审核)。我希望从 Graph API 获得同样的功能。

我创建了一个具有读取目录应用程序权限的应用程序,并且可以很好地访问 Graph API。但是,当我提取 AuditEvent 报告时,诸如 PasswordLogonInitialAuthUsingPassword 和 MailboxLogin 之类的事件根本不存在。

我继续使用 Office Management Activity API 创建了一个不同的应用程序,在开始订阅 Audit.Exchange 和 Audit.AzureActiveDirectory 后,我看到了我通常在 Web UI 中看到的所有事件。

我当然可能是错的,但似乎 Graph API 是未来,所以我更愿意在我的应用程序中利用它。Graph API 中是否提供了上述信息,或者我应该利用 Management Activity API 吗?我也有兴趣提取其他报告,例如以下似乎只存在于 Graph 中的报告:

  • 妥协的凭据事件
  • 不规则登录活动事件
  • AllUsersWithAnomalousSignInActivityEvent

感觉我在 Graph API 中遗漏了一些东西,所以任何指导都将不胜感激。

azure office365 azure-active-directory microsoft-graph-api

5
推荐指数
0
解决办法
585
查看次数

Term :: ReadLine - 我需要两次点击向上箭头来检索历史记录

我正在使用Term :: ReadLine并且有一个奇怪的问题,我需要两次点击向上箭头来从addhistory中检索项目.这是我正在使用的脚本.

use Term::ReadLine;

my $term = Term::ReadLine->new('Term1');
print $term->ReadLine."\n";

while (defined(my $cmd = $term->readline())) {
    $term->addhistory($cmd) if $cmd =~ /\S/;
}
Run Code Online (Sandbox Code Playgroud)

为了测试,我将输入一些"命令",然后尝试使用向上箭头检索这些命令.我点击向上箭头,最后一个项目立即出现,但我需要在检索到每个后续项目之前按两次向上箭头.

我之前在一个正在研究的小项目中遇到过这个问题,遇到了同样问题的人.该问题的解决方案是对addhistory行的修改如下:

$term->addhistory($cmd) if $cmd !~ /\S||\n/;
Run Code Online (Sandbox Code Playgroud)

它起作用所以我继续前进,直到Tanktalus在我发布的另一个问题中提出这个问题.Perl Term :: ReadLine :: Gnu信号处理的难点

他问"什么是/\S || \n /应该做什么?".好吧,让我去找那个暗示这个作为修复的页面......是的......找不到它.因此,虽然我可以使用我发布的修改工作,但是因为A我有点卡住了.我不知道它为什么修复它,而B.为什么我似乎是唯一一个有这个问题的人?

任何帮助或建议将不胜感激!:)

使用以下版本测试上述脚本:

Perl - 5.12.4 and 5.16.1
Term::ReadLine::Gnu - 1.20
Term::ReadLine::Perl - 1.0303 (Just tried it to make sure it wasn't Gnu)
Term::ReadLine - 1.10
Run Code Online (Sandbox Code Playgroud)

perl readline

2
推荐指数
1
解决办法
546
查看次数