From cc65c58a5092710faa3e96ca9883499ed741af93 Mon Sep 17 00:00:00 2001 From: Willian Galvani Date: Fri, 16 Feb 2024 15:47:13 -0300 Subject: [PATCH] core: services: stop using python-based memory limiting This only limits virtual memory: https://linux.die.net/man/2/setrlimit#:~:text=RLIMIT_AS,resource%20is%20unlimited. on top of it, it is also redundant with the ulimit limiter at run-service.sh --- core/services/ardupilot_manager/main.py | 5 +---- core/services/bag_of_holding/main.py | 3 --- core/services/beacon/main.py | 3 --- core/services/bridget/main.py | 3 --- core/services/cable_guy/main.py | 3 --- core/services/commander/main.py | 4 +--- core/services/kraken/main.py | 3 --- core/services/log_zipper/main.py | 8 +------- core/services/nmea_injector/nmea_injector/main.py | 3 --- core/services/pardal/main.py | 3 --- core/services/ping/main.py | 3 --- core/services/versionchooser/main.py | 3 --- core/services/wifi/main.py | 3 --- 13 files changed, 3 insertions(+), 44 deletions(-) diff --git a/core/services/ardupilot_manager/main.py b/core/services/ardupilot_manager/main.py index 375072186d..75f682a8fc 100755 --- a/core/services/ardupilot_manager/main.py +++ b/core/services/ardupilot_manager/main.py @@ -14,7 +14,7 @@ StackedHTTPException, ) from commonwealth.utils.decorators import single_threaded -from commonwealth.utils.general import is_running_as_root, limit_ram_usage +from commonwealth.utils.general import is_running_as_root from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import Body, FastAPI, File, HTTPException, UploadFile, status from fastapi.responses import HTMLResponse @@ -31,9 +31,6 @@ FRONTEND_FOLDER = Path.joinpath(Path(__file__).parent.absolute(), "frontend") -# We need additional RAM in order to decompress the manifest file -limit_ram_usage(400) - parser = argparse.ArgumentParser(description="ArduPilot Manager service for Blue Robotics BlueOS") parser.add_argument("-s", "--sitl", help="run SITL instead of connecting any board", action="store_true") diff --git a/core/services/bag_of_holding/main.py b/core/services/bag_of_holding/main.py index 28e97779b6..beef8c44e0 100755 --- a/core/services/bag_of_holding/main.py +++ b/core/services/bag_of_holding/main.py @@ -8,7 +8,6 @@ import dpath import uvicorn from commonwealth.utils.apis import GenericErrorHandlingRoute -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import Body, FastAPI, HTTPException from fastapi import Path as FastPath @@ -20,8 +19,6 @@ SERVICE_NAME = "bag-of-holding" FILE_PATH = Path(appdirs.user_config_dir(SERVICE_NAME, "db.json")) -limit_ram_usage() - logging.basicConfig(handlers=[InterceptHandler()], level=0) init_logger(SERVICE_NAME) diff --git a/core/services/beacon/main.py b/core/services/beacon/main.py index 736fa5f1f1..b5d6e1f87b 100755 --- a/core/services/beacon/main.py +++ b/core/services/beacon/main.py @@ -10,7 +10,6 @@ import psutil from commonwealth.settings.manager import Manager from commonwealth.utils.apis import PrettyJSONResponse -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import init_logger from fastapi import FastAPI, Request from fastapi.responses import HTMLResponse @@ -25,8 +24,6 @@ SERVICE_NAME = "beacon" -limit_ram_usage() - class AsyncRunner: def __init__(self, ip_version: IPVersion, interface: str, interface_name: str) -> None: diff --git a/core/services/bridget/main.py b/core/services/bridget/main.py index 0d19d27f30..a0cd6f6eee 100755 --- a/core/services/bridget/main.py +++ b/core/services/bridget/main.py @@ -4,7 +4,6 @@ import uvicorn from commonwealth.utils.apis import GenericErrorHandlingRoute, PrettyJSONResponse -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import FastAPI, status from fastapi.responses import HTMLResponse @@ -15,8 +14,6 @@ SERVICE_NAME = "bridget" -limit_ram_usage() - logging.basicConfig(handlers=[InterceptHandler()], level=0) init_logger(SERVICE_NAME) diff --git a/core/services/cable_guy/main.py b/core/services/cable_guy/main.py index 2e2eddcee0..6ae6db3670 100755 --- a/core/services/cable_guy/main.py +++ b/core/services/cable_guy/main.py @@ -8,7 +8,6 @@ from commonwealth.utils.apis import GenericErrorHandlingRoute, PrettyJSONResponse from commonwealth.utils.decorators import temporary_cache -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import Body, FastAPI from fastapi.responses import HTMLResponse @@ -27,8 +26,6 @@ SERVICE_NAME = "cable-guy" -limit_ram_usage() - parser = argparse.ArgumentParser(description="CableGuy service for Blue Robotics BlueOS") parser.add_argument( "--default_config", diff --git a/core/services/commander/main.py b/core/services/commander/main.py index 7340473295..1a67588708 100755 --- a/core/services/commander/main.py +++ b/core/services/commander/main.py @@ -12,7 +12,7 @@ import uvicorn from commonwealth.utils.apis import GenericErrorHandlingRoute from commonwealth.utils.commands import run_command -from commonwealth.utils.general import delete_everything, limit_ram_usage +from commonwealth.utils.general import delete_everything from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import FastAPI, HTTPException, status from fastapi.responses import HTMLResponse @@ -22,8 +22,6 @@ SERVICE_NAME = "commander" LOG_FOLDER_PATH = os.environ.get("BLUEOS_LOG_FOLDER_PATH", "/var/logs/blueos") -limit_ram_usage() - logging.basicConfig(handlers=[InterceptHandler()], level=0) init_logger(SERVICE_NAME) diff --git a/core/services/kraken/main.py b/core/services/kraken/main.py index 6ac92f57c9..958400cce6 100755 --- a/core/services/kraken/main.py +++ b/core/services/kraken/main.py @@ -5,7 +5,6 @@ from typing import Any, Iterable from commonwealth.utils.apis import GenericErrorHandlingRoute -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import FastAPI, HTTPException, status from fastapi.responses import HTMLResponse, PlainTextResponse, StreamingResponse @@ -32,8 +31,6 @@ def is_valid(self) -> bool: SERVICE_NAME = "kraken" -limit_ram_usage() - logging.basicConfig(handlers=[InterceptHandler()], level=0) init_logger(SERVICE_NAME) diff --git a/core/services/log_zipper/main.py b/core/services/log_zipper/main.py index 93a9eb9287..d3f8921238 100755 --- a/core/services/log_zipper/main.py +++ b/core/services/log_zipper/main.py @@ -10,18 +10,12 @@ import time from typing import List -from commonwealth.utils.general import ( - available_disk_space_mb, - delete_everything, - limit_ram_usage, -) +from commonwealth.utils.general import available_disk_space_mb, delete_everything from commonwealth.utils.logs import InterceptHandler, init_logger from loguru import logger SERVICE_NAME = "log-zipper" -limit_ram_usage() - def zip_files(files: List[str], output_path: str) -> None: for file in files: diff --git a/core/services/nmea_injector/nmea_injector/main.py b/core/services/nmea_injector/nmea_injector/main.py index 62b07c6179..194e7b32b4 100755 --- a/core/services/nmea_injector/nmea_injector/main.py +++ b/core/services/nmea_injector/nmea_injector/main.py @@ -5,7 +5,6 @@ from typing import Any, List from commonwealth.utils.apis import GenericErrorHandlingRoute, PrettyJSONResponse -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import FastAPI, status from fastapi.responses import HTMLResponse @@ -17,8 +16,6 @@ SERVICE_NAME = "nmea-injector" -limit_ram_usage() - parser = argparse.ArgumentParser(description="NMEA Injector service for Blue Robotics BlueOS") parser.add_argument("-u", "--udp", type=int, help="change the default UDP input port") parser.add_argument("-t", "--tcp", type=int, help="change the default TCP input port") diff --git a/core/services/pardal/main.py b/core/services/pardal/main.py index d4375416f4..ed6a3554d6 100755 --- a/core/services/pardal/main.py +++ b/core/services/pardal/main.py @@ -7,14 +7,11 @@ import aiohttp from aiohttp import web -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from loguru import logger SERVICE_NAME = "pardal" -limit_ram_usage() - parser = argparse.ArgumentParser(description="Pardal, web service to help with speed and latency tests") parser.add_argument("-p", "--port", help="Port to run web server", action="store_true", default=9120) diff --git a/core/services/ping/main.py b/core/services/ping/main.py index 70ef979ff9..6c55ebc619 100755 --- a/core/services/ping/main.py +++ b/core/services/ping/main.py @@ -5,7 +5,6 @@ from typing import Any, List from commonwealth.utils.apis import GenericErrorHandlingRoute, PrettyJSONResponse -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import FastAPI, status from fastapi.responses import HTMLResponse @@ -20,8 +19,6 @@ SERVICE_NAME = "ping" -limit_ram_usage() - logging.basicConfig(handlers=[InterceptHandler()], level=0) init_logger(SERVICE_NAME) diff --git a/core/services/versionchooser/main.py b/core/services/versionchooser/main.py index eab84f6485..c0db775820 100755 --- a/core/services/versionchooser/main.py +++ b/core/services/versionchooser/main.py @@ -5,7 +5,6 @@ import aiodocker import connexion from aiohttp import web -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from loguru import logger @@ -13,8 +12,6 @@ SERVICE_NAME = "version-chooser" -limit_ram_usage() - logging.basicConfig(handlers=[InterceptHandler()], level=0) init_logger(SERVICE_NAME) diff --git a/core/services/wifi/main.py b/core/services/wifi/main.py index d852bec9f6..97d3555cba 100755 --- a/core/services/wifi/main.py +++ b/core/services/wifi/main.py @@ -13,7 +13,6 @@ PrettyJSONResponse, StackedHTTPException, ) -from commonwealth.utils.general import limit_ram_usage from commonwealth.utils.logs import InterceptHandler, init_logger from fastapi import FastAPI, HTTPException, status from fastapi.staticfiles import StaticFiles @@ -29,8 +28,6 @@ FRONTEND_FOLDER = Path.joinpath(Path(__file__).parent.absolute(), "frontend") SERVICE_NAME = "wifi-manager" -limit_ram_usage() - logging.basicConfig(handlers=[InterceptHandler()], level=0) init_logger(SERVICE_NAME)