Fortinet Document Library

Version:

Version:

Version:

Version:

Version:

Version:

Version:

Version:

Version:

Version:

Version:

Version:


Table of Contents

Administration Guide

Checking memory usage

  1. Use “diagnose debug memory” to check memory usage:

    This command will collect memory information via several different kinds of backend commands.

    FortiWeb# diagnose debug memory 

    Tue Oct 26 17:42:56 UTC 2021

     

    17:42:56 up 5 days, 19:45,  load average: 2.09, 1.78, 1.82

               init      1 shared  1528kB  anonymous    112kB

            cmdbsvr    191 shared 17132kB  anonymous  33688kB

            syslogd    873 shared   256kB  anonymous     44kB

              klogd    874 shared   256kB  anonymous     48kB

             hamain    875 shared 10632kB  anonymous   6972kB

             hasync    876 shared  9328kB  anonymous   6832kB

    ...

    ...

  2. After 6.4 release, the system will generate a regular monitoring file with a backend command “/bin/FortiWeb_get_memory_usage”, which includes the same output of “diagnose debug memory”.

    The regular output is recorded in /var/log/gui_upload/debug_memory.txt and can be downloaded via System > Maintenance > Backup&Restore. You can download it manually or use the one-click button to archive and download it.

    You can set the interval to record debug memory logs:

    config system global

        set debug-memory-interval 5    #default 5 minutes and the range is from 1 to 65535

    end

     

    /# more /var/log/gui_upload/debug_memory.txt

    Fri May 28 04:30:13 UTC 2021

    04:30:13 up 0 min,  load average: 1.07, 0.26, 0.09

     

               init      1 shared  1376kB  anonymous    104kB

            cmdbsvr   2293 shared 14044kB  anonymous  29032kB

            syslogd   3457 shared   280kB  anonymous     48kB

    ...

    ...

  3. Check current memory usage in backend shell:

    Please note that FortiWeb changes the way to login to the backend shell Refer to Part VI: Run backend-shell commands.

    free

    This command gives you a table of the total, used, free, shared, buffer/cache, and available RAM. It also shows the total amount of swap space configured, and how much is used and available. The default unit is KB.

    free= total – used – buff/cache

    /# free

                              total           used              free      shared     buffers     cached

    Mem:     130987692    4990340  125997352      16540      23576     129092

    -/+ buffers/cache:         4837672  126150020

    Swap:            0          0          0

    /proc/meminfo

    This is a virtual file that reports the amount of available and used memory. It contains real-time information about the system’s memory usage as well as the buffers and shared memory used by the kernel

    /# cat /proc/meminfo

    MemTotal:       28635360 kB

    MemFree:        25998836 kB

    MemAvailable:   26127368 kB

    Buffers:          201340 kB

    Cached:           192220 kB

    SwapCached:            0 kB

    Active:          1730772 kB

    Inactive:         164688 kB

    Active(anon):    1501972 kB

    Inactive(anon):    38064 kB

    Active(file):     228800 kB

    Inactive(file):   126624 kB

    Unevictable:        1164 kB

    Mlocked:            1164 kB

    SwapTotal:             0 kB

    SwapFree:              0 kB

    Dirty:               104 kB

    Writeback:             0 kB

    AnonPages:       1503120 kB

    Mapped:            89856 kB

    Shmem:             38164 kB

    KReclaimable:      22528 kB

    Slab:              94268 kB

    SReclaimable:      22528 kB

    SUnreclaim:        71740 kB

    KernelStack:        5536 kB

    PageTables:        12048 kB

    NFS_Unstable:          0 kB

    Bounce:                0 kB

    WritebackTmp:          0 kB

    CommitLimit:    14317680 kB

    Committed_AS:    5405984 kB

    VmallocTotal:   34359738367 kB

    VmallocUsed:       64024 kB

    VmallocChunk:          0 kB

    Percpu:             1984 kB

    DirectMap4k:       63424 kB

    DirectMap2M:     3082240 kB

    DirectMap1G:    28311552 kB

    /# top

    Some common usage: Press Shift + P to sort the five columns of data by CPU usage (the default) or Shift + M to sort by memory usage; Press “1” (number one) to check status of all logical processors.

    /# top

    Mem: 4919392K used, 126068300K free, 16348K shrd, 45984K buff, 134312K cached

    CPU:  0.1% usr  0.0% sys  0.0% nic 99.8% idle  0.0% io  0.0% irq  0.0% sirq

    Load average: 1.33 1.40 1.38 2/954 28663

      PID  PPID USER     STAT   VSZ %VSZ CPU %CPU COMMAND

    6262     1 root     S    9582m  7.4  55  0.0 /bin/proxyd

    6276     1 root     S     224m  0.1  39  0.0 /bin/confd_ha

    6264     1 root     S    6539m  5.1  24  0.0 /bin/bot_daemon

    6273     1 root     S    2498m  1.9  60  0.0 /bin/garbage -o standalone

    6316  6238 root     S    2098m  1.6   7  0.0 /bin/mysqld --defaults-file=/data/etc

    6251     1 root     S     803m  0.6  12  0.0 /bin/monitord

    6269     1 root     S     411m  0.3  17  0.0 /bin/sandboxd

    6271     1 root     S     400m  0.3  41  0.0 /bin/shibd -F -f -p /var/run/shibd.pi

    6287     1 root     S     256m  0.2  59  0.0 /bin/statusd

    6257     1 root     S     245m  0.1  63  0.0 /bin/wvsd

    6244     1 root     S     219m  0.1  36  0.0 /bin/logd

    6272     1 root     S     202m  0.1  26  0.0 /bin/fortiviewd

     

Checking memory usage

  1. Use “diagnose debug memory” to check memory usage:

    This command will collect memory information via several different kinds of backend commands.

    FortiWeb# diagnose debug memory 

    Tue Oct 26 17:42:56 UTC 2021

     

    17:42:56 up 5 days, 19:45,  load average: 2.09, 1.78, 1.82

               init      1 shared  1528kB  anonymous    112kB

            cmdbsvr    191 shared 17132kB  anonymous  33688kB

            syslogd    873 shared   256kB  anonymous     44kB

              klogd    874 shared   256kB  anonymous     48kB

             hamain    875 shared 10632kB  anonymous   6972kB

             hasync    876 shared  9328kB  anonymous   6832kB

    ...

    ...

  2. After 6.4 release, the system will generate a regular monitoring file with a backend command “/bin/FortiWeb_get_memory_usage”, which includes the same output of “diagnose debug memory”.

    The regular output is recorded in /var/log/gui_upload/debug_memory.txt and can be downloaded via System > Maintenance > Backup&Restore. You can download it manually or use the one-click button to archive and download it.

    You can set the interval to record debug memory logs:

    config system global

        set debug-memory-interval 5    #default 5 minutes and the range is from 1 to 65535

    end

     

    /# more /var/log/gui_upload/debug_memory.txt

    Fri May 28 04:30:13 UTC 2021

    04:30:13 up 0 min,  load average: 1.07, 0.26, 0.09

     

               init      1 shared  1376kB  anonymous    104kB

            cmdbsvr   2293 shared 14044kB  anonymous  29032kB

            syslogd   3457 shared   280kB  anonymous     48kB

    ...

    ...

  3. Check current memory usage in backend shell:

    Please note that FortiWeb changes the way to login to the backend shell Refer to Part VI: Run backend-shell commands.

    free

    This command gives you a table of the total, used, free, shared, buffer/cache, and available RAM. It also shows the total amount of swap space configured, and how much is used and available. The default unit is KB.

    free= total – used – buff/cache

    /# free

                              total           used              free      shared     buffers     cached

    Mem:     130987692    4990340  125997352      16540      23576     129092

    -/+ buffers/cache:         4837672  126150020

    Swap:            0          0          0

    /proc/meminfo

    This is a virtual file that reports the amount of available and used memory. It contains real-time information about the system’s memory usage as well as the buffers and shared memory used by the kernel

    /# cat /proc/meminfo

    MemTotal:       28635360 kB

    MemFree:        25998836 kB

    MemAvailable:   26127368 kB

    Buffers:          201340 kB

    Cached:           192220 kB

    SwapCached:            0 kB

    Active:          1730772 kB

    Inactive:         164688 kB

    Active(anon):    1501972 kB

    Inactive(anon):    38064 kB

    Active(file):     228800 kB

    Inactive(file):   126624 kB

    Unevictable:        1164 kB

    Mlocked:            1164 kB

    SwapTotal:             0 kB

    SwapFree:              0 kB

    Dirty:               104 kB

    Writeback:             0 kB

    AnonPages:       1503120 kB

    Mapped:            89856 kB

    Shmem:             38164 kB

    KReclaimable:      22528 kB

    Slab:              94268 kB

    SReclaimable:      22528 kB

    SUnreclaim:        71740 kB

    KernelStack:        5536 kB

    PageTables:        12048 kB

    NFS_Unstable:          0 kB

    Bounce:                0 kB

    WritebackTmp:          0 kB

    CommitLimit:    14317680 kB

    Committed_AS:    5405984 kB

    VmallocTotal:   34359738367 kB

    VmallocUsed:       64024 kB

    VmallocChunk:          0 kB

    Percpu:             1984 kB

    DirectMap4k:       63424 kB

    DirectMap2M:     3082240 kB

    DirectMap1G:    28311552 kB

    /# top

    Some common usage: Press Shift + P to sort the five columns of data by CPU usage (the default) or Shift + M to sort by memory usage; Press “1” (number one) to check status of all logical processors.

    /# top

    Mem: 4919392K used, 126068300K free, 16348K shrd, 45984K buff, 134312K cached

    CPU:  0.1% usr  0.0% sys  0.0% nic 99.8% idle  0.0% io  0.0% irq  0.0% sirq

    Load average: 1.33 1.40 1.38 2/954 28663

      PID  PPID USER     STAT   VSZ %VSZ CPU %CPU COMMAND

    6262     1 root     S    9582m  7.4  55  0.0 /bin/proxyd

    6276     1 root     S     224m  0.1  39  0.0 /bin/confd_ha

    6264     1 root     S    6539m  5.1  24  0.0 /bin/bot_daemon

    6273     1 root     S    2498m  1.9  60  0.0 /bin/garbage -o standalone

    6316  6238 root     S    2098m  1.6   7  0.0 /bin/mysqld --defaults-file=/data/etc

    6251     1 root     S     803m  0.6  12  0.0 /bin/monitord

    6269     1 root     S     411m  0.3  17  0.0 /bin/sandboxd

    6271     1 root     S     400m  0.3  41  0.0 /bin/shibd -F -f -p /var/run/shibd.pi

    6287     1 root     S     256m  0.2  59  0.0 /bin/statusd

    6257     1 root     S     245m  0.1  63  0.0 /bin/wvsd

    6244     1 root     S     219m  0.1  36  0.0 /bin/logd

    6272     1 root     S     202m  0.1  26  0.0 /bin/fortiviewd