# Metricbeat - Capable of following?

**URL:** https://discuss.elastic.co/t/metricbeat-capable-of-following/68776
**Category:** Beats
**Tags:** metricbeat
**Created:** [December 12, 2016, 9:20pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776 "2016-12-12T21:20:46Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [December 12, 2016, 9:20pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/1 "2016-12-12T21:20:47Z")

</div>

I would appreciate if someone could answer the following regarding MetricBeats =\>  
1.) Does MetricBeat support secure data transmission?  
2.) Regarding stability, is there any built-in agent fail-over?  
3.) Is there a known supported data volume or break point (e.g. 10,000 events, etc.)  
4.) What is in place for data buffering? Is data queued for processing?

Thanks!

---

<div class="post-metadata">

### Author: ![andrewkroh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/andrewkroh/32/3784_2.png) [@andrewkroh](https://discuss.elastic.co/u/andrewkroh)
#### Post date: [December 12, 2016, 10:30pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/2 "2016-12-12T22:30:21Z")

</div>

1. Yes
2. Yes, if [multiple hosts](https://www.elastic.co/guide/en/beats/metricbeat/current/elasticsearch-output.html#hosts-option) are defined and one becomes unresponsive it will move on to the next.
3. No known rate. Usually the limiting factor is the ingest rate on the receiving side. So capacity planning and stress testing can reduce risk.
4. For Metricbeat [some number](https://www.elastic.co/guide/en/beats/metricbeat/current/configuration-general.html#_queue_size) of events can be buffered in memory. Once the queue fills up (due to the output not being available or being too slow) new data collection will stop until space frees up in the queue. There has been [some talk](https://github.com/elastic/beats/issues/3155) of spooling events to disk so that collection can continue. In addition all Beats support sending to an external queue like Redis or Kafka.

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [December 13, 2016, 1:27pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/3 "2016-12-13T13:27:31Z")

</div>

Great info, thank you very much for the quick response.

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [January 4, 2017, 6:20pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/4 "2017-01-04T18:20:49Z")

</div>

I had a few follow up questions please as we get closer to making a decision on our metric collection agent........  
1.) Is it possible to add additional (custom) tags to Beats metrics? (e.g. ApplicationID field)  
2.) Does Beats have any dependencies required for install? Our "build team" is inquiring about this item.  
3.) Does Beats agent have a built in heartbeat mechanism? Trying to determine most effective method to determining up/down status of agent.

Thanks!

---

<div class="post-metadata">

### Author: ![andrewkroh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/andrewkroh/32/3784_2.png) [@andrewkroh](https://discuss.elastic.co/u/andrewkroh)
#### Post date: [January 4, 2017, 6:39pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/5 "2017-01-04T18:39:52Z")

</div>

1. Yes, tags can be applied [globally](https://www.elastic.co/guide/en/beats/metricbeat/current/configuration-general.html#_tags_2) or [per module](https://www.elastic.co/guide/en/beats/metricbeat/current/configuration-metricbeat.html#_tags). [`fields`](https://www.elastic.co/guide/en/beats/metricbeat/current/configuration-general.html#libbeat-configuration-fields) and `fields_under_root` can also be used to add arbitrary fields to your events.
2. There are no dependencies.
3. There is no heartbeat built in, but the absence of any events from a host could be an indicator. We are planning to add a centralized monitoring capability to all Beats where metrics and health/status info will be available in [X-Pack Monitoring](https://www.elastic.co/products/x-pack/monitoring) (under the free Basic license). Logstash is being added to monitoring now and then Beats will be next. Some people are using the undocumented `-httpprof` endpoint to keep an eye on Beats now, but that interface will probably change with centralized monitoring (see [#463](https://github.com/elastic/beats/issues/463)).

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [January 5, 2017, 3:36pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/6 "2017-01-05T15:36:18Z")

</div>

Thank you for your quick response Andrew! I will try to add the fields later today or tomorrow. I did have a couple of related questions if I could please.  
1.) Regarding the adding of centralized monitoring to Beats, do you have a rough estimate on the timeline for this?  
2.) Regarding the collection of diskio metrics, is the expectation that a single "time" metric will be expected for each disk? For example, "metricset":{"module":"system","name":"diskio"},"system":{"diskio":{"io":{"time":183},"name":"xvdal1","read":{"bytes":1155072,"count":402,"time:183},"write":{"bytes":0,"count":0,"time":0}}},"type":"metricsets"}

Thanks!

---

<div class="post-metadata">

### Author: ![andrewkroh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/andrewkroh/32/3784_2.png) [@andrewkroh](https://discuss.elastic.co/u/andrewkroh)
#### Post date: [January 5, 2017, 4:06pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/7 "2017-01-05T16:06:37Z")

</div>

1. It's probably a 6.0 feature, but maybe 5.3.
2. The is a single event/document generated for each disk. The event contains three times -- read, write, and total (all in ms). And IIRC all of the values are counters so the data is cumulative.

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [January 5, 2017, 7:17pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/8 "2017-01-05T19:17:04Z")

</div>

Ok, as I am brand new to Beats suite, I am unfamiliar with the release schedule. If 5.0 is current version, when can 5.3 be expected, 6.0, etc. For example, is there one release per/month or per/quarter?

---

<div class="post-metadata">

### Author: ![andrewkroh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/andrewkroh/32/3784_2.png) [@andrewkroh](https://discuss.elastic.co/u/andrewkroh)
#### Post date: [January 5, 2017, 9:43pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/9 "2017-01-05T21:43:49Z")

</div>

5.3 is probably around March. 6.0 - probably fall.

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [January 9, 2017, 9:24pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/10 "2017-01-09T21:24:06Z")

</div>

ok, just want to make sure we are talking about the same thing. For 'centralized monitoring' functionality, this is for agent management I'm assuming. What functionality is currently planned? Will this be a part of a larger implementation of a agent configuration or agent management configuration tool (e.g. where agents can be restarted, etc.)? Maybe something similar to Rocana Ops dashboard where hostname, config profile, config profile, etc can be viewed)? Or is what I'm referring to part of a paid for "managed" solution?

Also, what do the majority of your large customers use as the mechanism for managing/upgrading agent versions since you average a release per month?

Thanks Andrew!!

---

<div class="post-metadata">

### Author: ![andrewkroh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/andrewkroh/32/3784_2.png) [@andrewkroh](https://discuss.elastic.co/u/andrewkroh)
#### Post date: [January 10, 2017, 11:11pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/11 "2017-01-10T23:11:20Z")

</div>

The centralized monitoring that I spoke of earlier will be a "read-only" feature. It won't do management of the agents. Centralized configuration has been discussed, but the feature is less clear in scope, schedule, and licensing to me. I can check with the product management team.

Most orgs are using one of the configuration management tools like Ansible, Puppet, or Chef to deploy the software and configure it.

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [January 25, 2017, 6:54pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/12 "2017-01-25T18:54:47Z")

</div>

Is there any documentation regarding stability use cases? As we prepare to roll this out to enterprise, there are a number of stability scenarios where we want to monitor agent under certain stress conditions. Not sure i can test all these in our environment so wanted to see if you had any data/info on how the MetricBeat agent behaves in the following situations:

No Configuration  
Bad Configuration (incorrectly formed config for example)

Log Path Unavailable (\*using FileOutput option and AWS Kinesis Agent to send stream)  
Log File not found (variation on the above but different)  
No access to log path

Stream Endpoint Unavailable  
No access to stream endpoint  
Stream not found

Event line exceeds buffers (can we create a massive string in a text file for this test – so it exceeds the jvm configured max for example)  
Event line cannot be read (Corrupt, badly formed etc..)

Local buffer gets too full (this when the stream is down)  
Local (to disk) buffer unavailable (when in memory buffer has to spool to disk, but disk location isn’t there)

---

<div class="post-metadata">

### Author: ![andrewkroh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/andrewkroh/32/3784_2.png) [@andrewkroh](https://discuss.elastic.co/u/andrewkroh)
#### Post date: [January 25, 2017, 7:54pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/13 "2017-01-25T19:54:35Z")

</div>

- No Configuration - Fails to start. Exit code 1.

- Bad Configuration - Fails to start. Exit code 1.

- Log Path Unavailable - Tries to create the path if it does not exists. Fails if it can't create the dir or file. Exit code 1.

- Log File not found - Creates the file if it does not exists.

- No access to log path - Fails on startup.

- Stream Endpoint Unavailable - Metricbeat buffers events in memory. When the buffer is full (based on a configurable number of events) it stops collecting new events. It continuously keep trying endpoints.

- No access to stream endpoint - Same as previous.

- Stream not found - Same as previous.

- Event line exceeds buffers (can we create a massive string in a text file for this test – so it exceeds the jvm configured max for example) - This sounds like a Filebeat question. It doesn't seem to make sense in the context of Metricbeat. Could you elaborate.

- Event line cannot be read (Corrupt, badly formed etc..)

- Local buffer gets too full (this when the stream is down) - Answered above.

- Local (to disk) buffer unavailable (when in memory buffer has to spool to disk, but disk location isn’t there) - Spooling to disk isn't a feature yet. [https://github.com/elastic/beats/issues/575](https://github.com/elastic/beats/issues/575)

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [January 25, 2017, 8:01pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/14 "2017-01-25T20:01:01Z")

</div>

Thanks for the quick response Andrew. Yes, my bad on not pointing out we are also simultaneously performing a POC on FileBeat. So if you could answer as it applies to FileBeat, that would be greatly appreciated!

Event line exceeds buffers (can we create a massive string in a text file for this test – so it exceeds the jvm configured max for example)

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [January 25, 2017, 8:13pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/15 "2017-01-25T20:13:33Z")

</div>

I guess I should ask before we get any further. We are using the FileOutput mechanism in combination with the AWS Kinesis Stream stand-alone Java agent to send data to AWS Kinesis streams. In the docs, I saw the following verbiage "Currently, this output is used for testing". Is this not meant to serve as a reliable production configuration for delivery? Also, is there a way to configure MetricBeat to send data to an AWS Kinesis stream directly? I see it is possible to send to Kafka, Logstash, and others.

---

<div class="post-metadata">

### Author: ![andrewkroh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/andrewkroh/32/3784_2.png) [@andrewkroh](https://discuss.elastic.co/u/andrewkroh)
#### Post date: [January 25, 2017, 8:26pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/16 "2017-01-25T20:26:50Z")

</div>

Ok, so for Filebeat

- Event line exceeds buffers (can we create a massive string in a text file for this test – so it exceeds the jvm configured max for example) - Filebeat has a [max\_bytes](https://www.elastic.co/guide/en/beats/filebeat/current/configuration-filebeat-options.html#_max_bytes) setting and if a line exceeds this it gets dropped.

- Event line cannot be read (Corrupt, badly formed etc..) - I think this depends on the encoding type you have configured. But let's see. @ruflin @steffens Could you answer this one?

---

<div class="post-metadata">

### Author: ![andrewkroh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/andrewkroh/32/3784_2.png) [@andrewkroh](https://discuss.elastic.co/u/andrewkroh)
#### Post date: [January 25, 2017, 8:47pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/17 "2017-01-25T20:47:31Z")

</div>

> [@rherr63](#):
>
> Log Path Unavailable (\*using FileOutput option and AWS Kinesis Agent to send stream)

I thought you meant you were using the [logging file output](https://www.elastic.co/guide/en/beats/metricbeat/current/configuration-logging.html#_to_files) in Metricbeat and then ingesting the logs to Kinesis.

So you are using the [file output](https://www.elastic.co/guide/en/beats/metricbeat/current/file-output.html) to write the JSON to disk then sending it to Kinesis via the Kinesis agent? The file output should work but Kinesis cannot acknowledge to the Beat that it has read the data so back-pressure is never applied to the Beat.

> [@rherr63](#):
>
> Also, is there a way to configure MetricBeat to send data to an AWS Kinesis stream directly? I see it is possible to send to Kafka, Logstash, and others.

No.

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [January 25, 2017, 9:01pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/18 "2017-01-25T21:01:18Z")

</div>

Yes, for Metricbeat, we have configured output.file with a local path to dump metric data. Then the AWS Kinesis stream agent requires two parameters =\>  
 ![](https://us1.discourse-cdn.com/elastic/original/2X/6/6c8b1de707f32697b8f018a4444203fb3a3d74c6.png)

We are leveraging AWS native components in lieu of building separate Kafka, ELK stack, etc. to simplify security, compliance, etc. If there is a better or more efficient method to configure Metricbeat given the setup I outlined, I would welcome any input or suggestions. Thanks!!!

---

<div class="post-metadata">

### Author: ![steffens](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/steffens/32/79630_2.png) [@steffens](https://discuss.elastic.co/u/steffens)
#### Post date: [January 26, 2017, 1:01pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/19 "2017-01-26T13:01:41Z")

</div>

filebeat reads a line until it detects a newline. Unfortunately only after a complete line has been read (as encodings do complicate the matter a little), will line limits in bytes be applied. That is, filebeat will buffer the complete line, but only report first N lines (default 10MB I think). Multiline events do have a total content limit as well (here the limit is applied while reading).

Unfortunately text codecs are quite dumb in general (no encoding information in file, so you just have to know which one to use). That is, if you've configured the wrong codec, beats will attempt the transformation (normally not erroring, but returning garbage) and send the event as has been reported by the codec (This is a general problem to text encoding, e.g. try opening the file in editor with wrong encoding).

---

<div class="post-metadata">

### Author: ![rherr63](https://avatars.discourse-cdn.com/v4/letter/r/ccd318/32.png) [@rherr63](https://discuss.elastic.co/u/rherr63)
#### Post date: [February 8, 2017, 6:10pm UTC](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776/20 "2017-02-08T18:10:43Z")

</div>

Hello Andrew, are metricbeat and filebeat capable of client-side encryption? Follow up....if so, is there an out-of-the-box method/tool to achieve or is it up to the user to modify the open-source code to provide functionality? Thank you, Rob Herring

[Next page](https://discuss.elastic.co/t/metricbeat-capable-of-following/68776.md?page=2)
