LinuxMonitor 1.3.11__tar.gz → 1.4.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1/LinuxMonitor.egg-info}/PKG-INFO +1 -1
- {linuxmonitor-1.3.11/LinuxMonitor.egg-info → linuxmonitor-1.4.1}/PKG-INFO +1 -1
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/linuxmonitor/__main__.py +1 -1
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/linuxmonitor/linuxmonitor.py +14 -3
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/setup.py +1 -1
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/LICENSE.md +0 -0
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/LinuxMonitor.egg-info/SOURCES.txt +0 -0
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/LinuxMonitor.egg-info/dependency_links.txt +0 -0
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/LinuxMonitor.egg-info/requires.txt +0 -0
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/LinuxMonitor.egg-info/top_level.txt +0 -0
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/README.md +0 -0
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/linuxmonitor/__init__.py +0 -0
- {linuxmonitor-1.3.11 → linuxmonitor-1.4.1}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: LinuxMonitor
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4.1
|
|
4
4
|
Summary: Get information and warning status of Linux server like service, port, ping, ssl certificate, disk/folder/cpu/ram/swap usage, ip connection, ... (Python and shell library, Linux ONLY)
|
|
5
5
|
Home-page: https://github.com/QuentinCG/Linux-Monitor-Python-Library
|
|
6
6
|
Author: Quentin Comte-Gaz
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: LinuxMonitor
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4.1
|
|
4
4
|
Summary: Get information and warning status of Linux server like service, port, ping, ssl certificate, disk/folder/cpu/ram/swap usage, ip connection, ... (Python and shell library, Linux ONLY)
|
|
5
5
|
Home-page: https://github.com/QuentinCG/Linux-Monitor-Python-Library
|
|
6
6
|
Author: Quentin Comte-Gaz
|
|
@@ -180,7 +180,7 @@ def main() -> None:
|
|
|
180
180
|
if args.list_processes:
|
|
181
181
|
handled = True
|
|
182
182
|
print("Listing active processes...")
|
|
183
|
-
out_msg: str = monitoring.get_ordered_processes(get_non_consuming_processes=False)
|
|
183
|
+
out_msg: str = asyncio.run(monitoring.get_ordered_processes(get_non_consuming_processes=False))
|
|
184
184
|
print(out_msg)
|
|
185
185
|
|
|
186
186
|
if args.kill_process is not None:
|
|
@@ -33,7 +33,7 @@ __email__ = "quentin@comte-gaz.com"
|
|
|
33
33
|
__license__ = "MIT License"
|
|
34
34
|
__copyright__ = "Copyright Quentin Comte-Gaz (2024)"
|
|
35
35
|
__python_version__ = "3.+"
|
|
36
|
-
__version__ = "1.
|
|
36
|
+
__version__ = "1.4.1 (2024/10/07)"
|
|
37
37
|
__status__ = "Usable for any Linux project"
|
|
38
38
|
|
|
39
39
|
import json
|
|
@@ -1672,7 +1672,7 @@ class LinuxMonitor:
|
|
|
1672
1672
|
|
|
1673
1673
|
#region Processes
|
|
1674
1674
|
|
|
1675
|
-
def get_ordered_processes(self, get_non_consuming_processes: bool = False) -> str:
|
|
1675
|
+
async def get_ordered_processes(self, get_non_consuming_processes: bool = False) -> str:
|
|
1676
1676
|
"""
|
|
1677
1677
|
Get the ordered list of processes by memory and CPU usage.
|
|
1678
1678
|
|
|
@@ -1682,6 +1682,17 @@ class LinuxMonitor:
|
|
|
1682
1682
|
"""
|
|
1683
1683
|
try:
|
|
1684
1684
|
processes = []
|
|
1685
|
+
|
|
1686
|
+
# To get meaningful results, we need to ask cpu percent and wait a bit to get valid cpu_percent values on second iteration
|
|
1687
|
+
for dummy_process in psutil.process_iter(['pid', 'name', 'username', 'cpu_percent', 'memory_info', 'create_time', 'cmdline']):
|
|
1688
|
+
try:
|
|
1689
|
+
# First call to cpu_percent to initialize it
|
|
1690
|
+
dummy_process.cpu_percent(interval=None)
|
|
1691
|
+
except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
|
|
1692
|
+
continue
|
|
1693
|
+
await asyncio.sleep(delay=0.1)
|
|
1694
|
+
|
|
1695
|
+
# Then we can get the processes
|
|
1685
1696
|
for process in psutil.process_iter(['pid', 'name', 'username', 'cpu_percent', 'memory_info', 'create_time', 'cmdline']):
|
|
1686
1697
|
try:
|
|
1687
1698
|
create_time = datetime.fromtimestamp(process.info['create_time']).strftime("%Y-%m-%d %H:%M:%S")
|
|
@@ -1696,7 +1707,7 @@ class LinuxMonitor:
|
|
|
1696
1707
|
'pid': process.info['pid'],
|
|
1697
1708
|
'name': process.info['name'],
|
|
1698
1709
|
'username': process.info['username'],
|
|
1699
|
-
'cpu_percent': process.
|
|
1710
|
+
'cpu_percent': process.cpu_percent(interval=None),
|
|
1700
1711
|
'memory': process.info['memory_info'].rss, # Resident Set Size (RSS) memory
|
|
1701
1712
|
'create_time': create_time,
|
|
1702
1713
|
'cmdline': cmdline
|
|
@@ -6,7 +6,7 @@ with io.open(file='README.md', mode='r', encoding='utf-8') as readme_file:
|
|
|
6
6
|
|
|
7
7
|
setup(
|
|
8
8
|
name="LinuxMonitor",
|
|
9
|
-
version="1.
|
|
9
|
+
version="1.4.1",
|
|
10
10
|
description="Get information and warning status of Linux server like service, port, ping, ssl certificate, disk/folder/cpu/ram/swap usage, ip connection, ... (Python and shell library, Linux ONLY)",
|
|
11
11
|
long_description=readme,
|
|
12
12
|
long_description_content_type="text/markdown",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|