Ignore:
Timestamp:
24 Sep 2014, 15:06:49 (10 years ago)
Author:
uli
Message:

Add helper to check swap space.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/waeup.kofa/trunk/src/waeup/kofa/utils/utils.py

    r11814 r11815  
    1919"""
    2020import grok
     21import psutil
    2122import string
    2223import pytz
     
    305306        """
    306307        return payment.p_item
     308
     309    def expensive_actions_allowed(self, type=None, request=None):
     310        """Tell, whether expensive actions are currently allowed.
     311
     312        Check system load/health (or other external circumstances) and
     313        locally set values to see, whether expensive actions should be
     314        allowed (`True`) or better avoided (`False`).
     315
     316        Use this to allow or forbid exports, report generations, or
     317        similar actions.
     318        """
     319        max_values = self.SYSTEM_MAX_LOAD
     320        if max_values['swap-mem'] is not None:
     321            swap_mem = psutil.swap_memory()
     322            max_val = max_values['swap-mem']
     323            if isinstance(max_val, float):
     324                if max_val < 0.0:
     325                    max_val += 100.0
     326                if swap_mem.percent > max_val:
     327                    return False
     328            else:
     329                if max_val < 0:
     330                    max_val += swap_mem.total
     331                if swap_mem.used > max_val:
     332                    return False
     333        return True
Note: See TracChangeset for help on using the changeset viewer.