splunk / eventgen

Splunk Event Generator: Eventgen
Apache License 2.0
380 stars 179 forks source link

Add disable logging option to fix oom #323

Closed li-wu closed 5 years ago

li-wu commented 5 years ago

Add --disable-logging option to disable the logging to address the oom issue.

I also removed structlog which does not have interface to change handler.

li-wu commented 5 years ago

The memory usage is less than 100MB per process with logging disable:

bash-5.0# ps -o pid,user,vsz,rss,comm,args
PID   USER     VSZ  RSS  COMMAND          COMMAND
    1 root     2212 1712 entrypoint.sh    {entrypoint.sh} /bin/bash /sbin/entrypoint.sh standalone
    8 root     4264  496 sshd             /usr/sbin/sshd
    9 root     1.1g  67m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
   10 root     1552    4 tail             tail -F -n0 /etc/hosts
 1350 root     1.0g  59m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1460 root     1.1g  89m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1461 root     1.1g  89m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1462 root     1.1g  90m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1472 root     1.1g  89m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1473 root     1.1g  87m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1474 root     1.1g  89m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1478 root     1.1g  90m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1487 root     1.1g  88m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1489 root     1.1g  89m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1490 root     1.1g  87m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1491 root     1.1g  90m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1504 root     1.1g  86m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1505 root     1.1g  86m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1506 root     1.1g  87m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1513 root     1.1g  86m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1517 root     1.1g  90m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1518 root     1.1g  87m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1528 root     1.1g  89m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1529 root     1.1g  88m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
 1530 root     1.1g  86m splunk_eventgen  {splunk_eventgen} /usr/bin/python2 /usr/bin/splunk_eventgen service --role standalone
13941 root     2404 2204 bash             bash
15406 root     1556    4 ps               ps -o pid,user,vsz,rss,comm,args