Created on
‎09-26-2024
01:21 PM
Edited on
‎01-15-2025
03:43 AM
By
Jean-Philippe_P
Description | This article describes how to troubleshoot the memory leak issue. |
Scope | FortiGate. |
Solution |
When memory usage is very high and increases very fast in a short period, it might be a memory leak issue, and it can be analyzed by the following steps.
Note that memory increase does not always mean a memory leak. A memory leak issue usually has these phenomena:
The most important thing for troubleshooting a memory leak issue is to locate which module, process, or function causes the memory increase.
get system status diagnose hardware sysinfo memory diagnose sys session stat
Example:
diag har sysinfo memory
The well-known processes for memory leaks are WAD, IPS, fgtlogd, and others. In case of memory leak issues, always refer to the release notes of the known issues of the firmware.
Refer to the below article to collect logs in case of WAD, IPS, and other processes consuming the memory. Based on the logs it can be identified If there is a leak or any network condition is triggering high memory usage.
Refer to this article if IPS memory optimization is needed: Technical Tip: IPS memory optimization steps.
Example:
diag har sysinfo memory MemTotal: 2042016 kB MemFree: 94896 kB Cached: 421136 kB Active: 526904 kB Slab: 960144 kB ---> Almost half of the memory.
In these kinds of cases, it is impossible to release this memory with some kind of command. Only a reboot will release the memory. It is possible to see which slab objects are using up the memory with the command diagnose hardware sysinfo slab. It will show the number of objects and their size which can be used to calculate the total size of a specific slab type.
Note: If 'diagnose sys top-summary' is deprecated, instead refer to Technical Tip: Deprecated of command 'diagnose sys top-summary. |