Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Enable profiling in Checkmk

    Info

    WATO - CONFIGURATION → Global Settings → USER INTERFACE

    Don't use 'Enable profiling by request'. This option will profile a Multisite request randomly and you and at the most of the time it will be the slowest one.



  2. Install Python module

    Code Block
    languagebash
    root@cmk-VirtualBox:~# pip install snakeviz


  3. Modify the URL to profile by adding '&_profile=1'

    Code Block
    languagebash
    http://localhost/nagnis_master/check_mk/view.py?view_name=allhosts&_profile=1


  4. Now two files are created in ~/var/check_mk/


    Code Block
    root@klappanas:/opt/omd/sites/nagnis_master/var/check_mk# ll |grep multisite
    -rw-rw---- 1 nagnis_master nagnis_master 100246 Nov 6 13:35 multisite.profile
    -rwxr-xr-x 1 nagnis_master nagnis_master 155 Nov 6 13:35 multisite.profile.py*


    • By executing 'multisite.profile.py'  you can get runtime statistics about the last processed page

      Code Block
      root@klappanas:/opt/omd/sites/nagnis_master/var/check_mk# ./multisite.profile.py |more
      Fri Nov  6 13:35:33 2020    /omd/sites/nagnis_master/var/check_mk/multisite.profile
      
               9585 function calls (9480 primitive calls) in 0.007 seconds
      
         Ordered by: internal time
      
         ncalls  tottime  percall  cumtime  percall filename:lineno(function)
              1    0.001    0.001    0.002    0.002 /omd/sites/nagnis_master/lib/python/cmk/gui/modules.py:140(_cmk_gui_top_level_modules)
           4652    0.000    0.000    0.000    0.000 {method 'startswith' of 'str' objects}
      ...
      ...
      ...
      ...


    • For viewing multisite.profile with snakeviz, move the file to another directory (e.g. /tmp) and change the owner to the owner of your Internet Browser

      Code Block
      languagebash
      anastasios@klappanas:/omd/sites/nagnis_master/var/check_mk$ sudo cp multisite.profile /tmp/
      anastasios@klappanas:/tmp$ sudo chown anastasios:anastasios multisite.profile
      


    • Now you can use snakeviz for viewing the profiling file

      Info


      Code Block
      anastasios@klappanas:/tmp$ snakeviz multisite.profile

...


  1. Now you can analyze at which point of the request your view needs the most time!


Verwandte Artikel

Filter by label (Content by label)
showLabelsfalse
max5
spaces~anastasios.thomaidis
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel = "kb-how-to-article" and type = "page" and space = "~anastasios.thomaidis"
labelskb-how-to-article

...