mirror of
https://github.com/elastic/logstash.git
synced 2025-04-24 22:57:16 -04:00
re #6508. - removed `acked_count`, `unacked_count`, and migrated `unread_count` to top-level `events` field. - removed `current_size_in_bytes` info from queue node stats Fixes #6510
72 lines
2.5 KiB
Ruby
72 lines
2.5 KiB
Ruby
require_relative '../framework/fixture'
|
|
require_relative '../framework/settings'
|
|
require_relative '../services/logstash_service'
|
|
require "logstash/devutils/rspec/spec_helper"
|
|
|
|
describe "Test Monitoring API" do
|
|
before(:all) {
|
|
@fixture = Fixture.new(__FILE__)
|
|
}
|
|
|
|
after(:all) {
|
|
@fixture.teardown
|
|
}
|
|
|
|
after(:each) {
|
|
@fixture.get_service("logstash").teardown
|
|
}
|
|
|
|
let(:number_of_events) { 5 }
|
|
let(:max_retry) { 120 }
|
|
|
|
it "can retrieve event stats" do
|
|
logstash_service = @fixture.get_service("logstash")
|
|
logstash_service.start_with_stdin
|
|
number_of_events.times { logstash_service.write_to_stdin("Hello world") }
|
|
|
|
begin
|
|
sleep(1) while (result = logstash_service.monitoring_api.event_stats).nil?
|
|
rescue
|
|
retry
|
|
end
|
|
|
|
Stud.try(max_retry.times, RSpec::Expectations::ExpectationNotMetError) do
|
|
result = logstash_service.monitoring_api.event_stats
|
|
expect(result["in"]).to eq(number_of_events)
|
|
end
|
|
end
|
|
|
|
it "can retrieve JVM stats" do
|
|
logstash_service = @fixture.get_service("logstash")
|
|
logstash_service.start_with_stdin
|
|
logstash_service.wait_for_logstash
|
|
|
|
Stud.try(max_retry.times, RSpec::Expectations::ExpectationNotMetError) do
|
|
result = logstash_service.monitoring_api.node_stats
|
|
expect(result["jvm"]["uptime_in_millis"]).to be > 100
|
|
end
|
|
end
|
|
|
|
it "can retrieve queue stats" do
|
|
logstash_service = @fixture.get_service("logstash")
|
|
logstash_service.start_with_stdin
|
|
logstash_service.wait_for_logstash
|
|
|
|
Stud.try(max_retry.times, RSpec::Expectations::ExpectationNotMetError) do
|
|
result = logstash_service.monitoring_api.node_stats
|
|
expect(result["pipeline"]["queue"]).not_to be_nil
|
|
if logstash_service.settings.feature_flag == "persistent_queues"
|
|
expect(result["pipeline"]["queue"]["type"]).to eq "persisted"
|
|
expect(result["pipeline"]["queue"]["data"]["free_space_in_bytes"]).not_to be_nil
|
|
expect(result["pipeline"]["queue"]["data"]["storage_type"]).not_to be_nil
|
|
expect(result["pipeline"]["queue"]["data"]["path"]).not_to be_nil
|
|
expect(result["pipeline"]["queue"]["events"]).not_to be_nil
|
|
expect(result["pipeline"]["queue"]["capacity"]["page_capacity_in_bytes"]).not_to be_nil
|
|
expect(result["pipeline"]["queue"]["capacity"]["max_queue_size_in_bytes"]).not_to be_nil
|
|
expect(result["pipeline"]["queue"]["capacity"]["max_unread_events"]).not_to be_nil
|
|
else
|
|
expect(result["pipeline"]["queue"]["type"]).to eq "memory"
|
|
end
|
|
end
|
|
end
|
|
end
|