Where? I could not find the output configuration of your metricbeat, you posted your logstash pipeline and some other metricbeat configuration, but not the configuration that was asked.
Can you share the entire output configuration from your metricbeat.yml? It is the part where you have output.logstash etc.
Yeah, you need to add a ttl setting to force the metricbeats instance to refresh the connection and try to get a more even distribution since your logstash instaces are behind haproxy.
Time to live for a connection to Logstash after which the connection will be re-established. Useful when Logstash hosts represent load balancers. Since the connections to Logstash hosts are sticky, operating behind load balancers can lead to uneven load distribution between the instances. Specifying a TTL on the connection allows to achieve equal connection distribution between the instances. Specifying a TTL of 0 will disable this feature.
You would need to have something like this in your output:
Note if you have a collection issue, ie the process info gaps are from intermittently uncollected process data, then this wonât help directly. If there are gaps in only the process data, but not say CPU load or memory usage from exact same clients, then that would be quite suggestive of a collection issue rather than something you can fix via configuration.
removed these three line on a system, restarted metricbeat and I can now see all the jobs. I think this was the issue. becuase it was only sending top X process and sometime it was missing because process might be sleeping and not on top X. make all sense now.
process.include_top_n:
by_cpu: 5 # include top 10 processes by CPU
by_memory: 5 # include top 10 processes by memory
will monitor for a week as I have thousands of metric per min, if all good then Architecture is good and in working as expected.
This is often confused... I have helped many others with this functionality is not always clear ...
Turning on ALL the process can significantly increase the number of metrics you collect
I suggest you look CLOSELY at these settings as they are easily miss-understood
Example
process.include_top_n.enabled
Set to false to disable the top N feature and include all processes, regardless of the other options. The default is true, but nothing is filtered unless one of the other options (by_cpu or by_memory) is set to a non-zero value.
You removed the two lines that disable filtering, but the Top N feature is still enabled without filteringâthis is a minor distinction. I use this setting when I want to include the filter while being able to toggle the Top N feature on or off.
There are whitelist options and other methods for filtering available.
Additionally, you can actually apply more than one metricset definition, allowing you to have both Top N and a specific named set at the same time. Please refer to this thread for more information: Metricbeat doesn't recognize the process - #4 by stephenb.
Example
- module: system
period: 10s
metricsets: ['process']
process.include_top_n:
by_cpu: 5 # include top 5 processes by CPU
by_memory: 5 # include top 5 processes by memory
- module: system
period: 10s
metricsets: ['process']
processes: ['^sysmon*']
So, take some time to think about what you really need, and we can likely help you customize it to your requirements.
I am not going to take all process as I have drop_event and all ârootâ process gets drops including few other.
But yes next week I am going to test this new configuration test out on few different type of servers and then push it out to all systems. I get 300+ million doc daily hence absolutely I donât want any more.
Last update. I have tested this and it works fine. already on way to all other host.
added some more drop event and bump up top_n to 20. that way even if something goes wrong I donât get more then 20 top cpu, 20 top memory (max 40 process) at any time.
Next is on proxy and find out why I am getting duplicate event on multiple logstash.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.