Closed
Description
In integration test for x-pack (./gradlew :logstash-xpack:rubyIntegrationTests
) executing the code in no_ssl_create_monitoring_indexes_spec.rb
The test fail with records metrics on es (FAILED - 2)
.
Looking a the HTTP flow against the ES I saw that the following request fail:
curl -X POST \
'http://localhost:9200/_monitoring/bulk?system_id=logstash&system_api_version=7&interval=1s' \
-H 'Accept: */*' \
-H 'Accept-Encoding: gzip, deflate' \
-H 'Cache-Control: no-cache' \
-H 'Connection: keep-alive' \
-H 'Content-Length: 3814' \
-H 'Content-Type: application/json' \
-H 'Host: localhost:9200' \
-H 'Postman-Token: eabcc560-476b-46f9-b307-2112f0ea4279,0c31af74-92cb-4074-8c3f-626864338ef9' \
-H 'User-Agent: PostmanRuntime/7.19.0' \
-H 'cache-control: no-cache' \
-d '{"index":{"_id":null,"_index":"","routing":null}}
{"events":{"out":100,"filtered":100,"in":100,"duration_in_millis":9},"pipelines":[{"vertices":[{"events_out":100,"id":"0088ad1832aae0bcb100ed9fa10613fb4c04ec7511213f9f00ab239c0341ed6e","pipeline_ephemeral_id":"4e451f98-c8d2-4d50-ab32-7b3ed9e772f8","queue_push_duration_in_millis":45},{"events_out":0,"id":"8b7254226d429280d72538ac989cf33a0d7eea47c4d95573aa03838e281fd2fb","pipeline_ephemeral_id":"4e451f98-c8d2-4d50-ab32-7b3ed9e772f8","queue_push_duration_in_millis":0},{"duration_in_millis":3,"events_in":100,"id":"f54c6abeacd1e1efe51b89ef216c8160d3b2cb3bd91faefe10c596f5fc8e1a81","pipeline_ephemeral_id":"4e451f98-c8d2-4d50-ab32-7b3ed9e772f8","events_out":100}],"events":{"out":100,"filtered":100,"in":100,"queue_push_duration_in_millis":45,"duration_in_millis":9},"id":"main","reloads":{"successes":0,"failures":0},"queue":{"type":"persisted","events_count":0,"max_queue_size_in_bytes":1073741824,"queue_size_in_bytes":28301},"ephemeral_id":"4e451f98-c8d2-4d50-ab32-7b3ed9e772f8","hash":"99c3329ae006e7e7e9fb706acdacfcd7a99a970e657ae27b2e0c8721fde898aa"}],"os":{"cpu":{"load_average":{"1m":3.86,"15m":0.88,"5m":1.39}},"cgroup":{"cpuacct":{"control_group":"/user.slice","usage_nanos":18184048518761},"cpu":{"control_group":"/user.slice","stat":{"number_of_elapsed_periods":0,"number_of_times_throttled":0,"time_throttled_nanos":0}}}},"timestamp":"2019-11-18T10:35:51.651Z","reloads":{"successes":0,"failures":0},"process":{"max_file_descriptors":1048576,"cpu":{"percent":28},"open_file_descriptors":154},"jvm":{"gc":{"collectors":{"old":{"collection_count":4,"collection_time_in_millis":1463},"young":{"collection_count":5,"collection_time_in_millis":279}}},"uptime_in_millis":18012,"mem":{"heap_used_in_bytes":236008832,"heap_used_percent":22,"heap_max_in_bytes":1037959168}},"queue":{"events_count":0},"logstash":{"version":"8.0.0","snapshot":null,"name":"kalispera","uuid":"a6dc637f-0b74-4084-87ba-ab1168f6ffe6","http_address":"127.0.0.1:9600","status":"green","pipeline":{"workers":1,"batch_size":125},"host":"kalispera","ephemeral_id":"0d0e62ee-7b02-4c3c-99c4-22a1330c7f16"}}
{"index":{"_id":null,"_index":"","routing":null}}
{"pipeline":{"workers":1,"id":"main","batch_size":125,"ephemeral_id":"4e451f98-c8d2-4d50-ab32-7b3ed9e772f8","hash":"99c3329ae006e7e7e9fb706acdacfcd7a99a970e657ae27b2e0c8721fde898aa","representation":{"version":"0.0.0","type":"lir","graph":{"edges":[{"type":"plain","id":"06dd4ecce32a89aa9c777cb5b153d746599730de525f481d3f32ef30ad59ace9","from":"0088ad1832aae0bcb100ed9fa10613fb4c04ec7511213f9f00ab239c0341ed6e","to":"__QUEUE__"},{"type":"plain","id":"9686d6711bbdf3301e0d673403c68f22e21e37fc0381c54f3e7533ec6c7cd7fd","from":"8b7254226d429280d72538ac989cf33a0d7eea47c4d95573aa03838e281fd2fb","to":"__QUEUE__"},{"type":"plain","id":"e56f86cc244ee133c3c18143d8bfc9b43571081c897bb39816c1bc9f262dcff8","from":"__QUEUE__","to":"f54c6abeacd1e1efe51b89ef216c8160d3b2cb3bd91faefe10c596f5fc8e1a81"}],"vertices":[{"meta":{"source":{"line":1,"column":9,"protocol":"str","id":"pipeline"}},"id":"0088ad1832aae0bcb100ed9fa10613fb4c04ec7511213f9f00ab239c0341ed6e","explicit_id":false,"type":"plugin","config_name":"generator","plugin_type":"input"},{"meta":{"source":{"line":1,"column":36,"protocol":"str","id":"pipeline"}},"id":"8b7254226d429280d72538ac989cf33a0d7eea47c4d95573aa03838e281fd2fb","explicit_id":false,"type":"plugin","config_name":"tcp","plugin_type":"input"},{"meta":null,"explicit_id":false,"type":"queue","id":"__QUEUE__"},{"meta":{"source":{"line":1,"column":68,"protocol":"str","id":"pipeline"}},"id":"f54c6abeacd1e1efe51b89ef216c8160d3b2cb3bd91faefe10c596f5fc8e1a81","explicit_id":false,"type":"plugin","config_name":"null","plugin_type":"output"}]},"hash":"99c3329ae006e7e7e9fb706acdacfcd7a99a970e657ae27b2e0c8721fde898aa"}}}'
On ES logs I can see the error:
{"type": "server", "timestamp": "2019-11-18T10:46:33,476Z", "level": "WARN", "component": "r.suppressed", "cluster.name": "docker-cluster", "node.name": "33537e8e82f8", "message": "path: /_monitoring/bulk, params: {system_id=logstash, system_api_version=7, nterval=1s}", "cluster.uuid": "BqqvzG6DQzCxK7Jzu5QdBQ", "node.id": "ojbhUFw2ShKzsWPWYkWt_w"}
with stack trace:
java.lang.NullPointerException: null,
at java.util.Objects.requireNonNull(Objects.java:222) ~[?:?],
at org.elasticsearch.xpack.core.monitoring.action.MonitoringBulkDoc.<init>(MonitoringBulkDoc.java:40) ~[?:?],
at org.elasticsearch.xpack.core.monitoring.action.MonitoringBulkRequest.lambda$add$0(MonitoringBulkRequest.java:96) ~[?:?],
at org.elasticsearch.action.bulk.BulkRequestParser.parse(BulkRequestParser.java:238) ~[elasticsearch-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.xpack.core.monitoring.action.MonitoringBulkRequest.add(MonitoringBulkRequest.java:82) ~[?:?],
at org.elasticsearch.xpack.core.monitoring.action.MonitoringBulkRequestBuilder.add(MonitoringBulkRequestBuilder.java:33) ~[?:?],
at org.elasticsearch.xpack.monitoring.rest.action.RestMonitoringBulkAction.prepareRequest(RestMonitoringBulkAction.java:93) ~[?:?],
at org.elasticsearch.rest.BaseRestHandler.handleRequest(BaseRestHandler.java:81) ~[elasticsearch-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.xpack.security.rest.SecurityRestFilter.handleRequest(SecurityRestFilter.java:69) ~[?:?],
at org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:221) [elasticsearch-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.rest.RestController.tryAllHandlers(RestController.java:303) [elasticsearch-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.rest.RestController.dispatchRequest(RestController.java:165) [elasticsearch-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.http.AbstractHttpServerTransport.dispatchRequest(AbstractHttpServerTransport.java:322) [elasticsearch-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.http.AbstractHttpServerTransport.handleIncomingRequest(AbstractHttpServerTransport.java:372) [elasticsearch-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.http.AbstractHttpServerTransport.incomingRequest(AbstractHttpServerTransport.java:301) [elasticsearch-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.http.netty4.Netty4HttpRequestHandler.channelRead0(Netty4HttpRequestHandler.java:69) [transport-netty4-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at org.elasticsearch.http.netty4.Netty4HttpRequestHandler.channelRead0(Netty4HttpRequestHandler.java:31) [transport-netty4-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:99) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at org.elasticsearch.http.netty4.Netty4HttpPipeliningHandler.channelRead(Netty4HttpPipeliningHandler.java:58) [transport-netty4-8.0.0-SNAPSHOT.jar:8.0.0-SNAPSHOT],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) [netty-codec-4.1.43.Final.jar:4.1.43.Final],
at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) [netty-codec-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) [netty-codec-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) [netty-codec-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:326) [netty-codec-4.1.43.Final.jar:4.1.43.Final],
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:300) [netty-codec-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:287) [netty-handler-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1422) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:931) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:163) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:700) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.nio.NioEventLoop.processSelectedKeysPlain(NioEventLoop.java:600) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:554) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:514) [netty-transport-4.1.43.Final.jar:4.1.43.Final],
at io.netty.util.concurrent.SingleThreadEventExecutor$6.run(SingleThreadEventExecutor.java:1050) [netty-common-4.1.43.Final.jar:4.1.43.Final],
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) [netty-common-4.1.43.Final.jar:4.1.43.Final],
at java.lang.Thread.run(Thread.java:830) [?:?]
- Version: 8.0.0-SNAPSHOT
- Operating System: Linux
- Steps to Reproduce:
- pull lastes ES docker image
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.0.0-SNAPSHOT
- start it
docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:8.0.0-SNAPSHOT
- use the above cURL and check ES logs