inspy-logger 3.0.dev5__tar.gz → 3.0.2__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.
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/PKG-INFO +2 -2
- inspy_logger-3.0.2/inspy_logger/Scripts/main.py +98 -0
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/inspy_logger/__about__.py +5 -16
- inspy_logger-3.0.2/inspy_logger/__init__.py +75 -0
- inspy_logger-3.0.2/inspy_logger/common/__init__.py +36 -0
- {inspy_logger-3.0.dev5/inspy_logger → inspy_logger-3.0.2/inspy_logger/engine}/__init__.py +414 -339
- inspy_logger-3.0.2/inspy_logger/engine/handlers.py +50 -0
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/inspy_logger/helpers/__init__.py +68 -13
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/inspy_logger/helpers/base_classes.py +10 -0
- inspy_logger-3.0.2/inspy_logger/helpers/command_line/__init__.py +28 -0
- inspy_logger-3.0.2/inspy_logger/helpers/debug/__init__.py +0 -0
- inspy_logger-3.0.2/inspy_logger/helpers/debug/environment.py +184 -0
- inspy_logger-3.0.2/inspy_logger/helpers/debug/system/__init__.py +0 -0
- inspy_logger-3.0.2/inspy_logger/helpers/debug/system/processor/__init__.py +64 -0
- inspy_logger-3.0.2/inspy_logger/helpers/debug/system/winx/__init__.py +25 -0
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/inspy_logger/helpers/network.py +5 -5
- inspy_logger-3.0.2/inspy_logger/helpers/units.py +57 -0
- inspy_logger-3.0.2/inspy_logger/tool/__init__.py +0 -0
- inspy_logger-3.0.2/inspy_logger/tool/config/__init__.py +0 -0
- inspy_logger-3.0.2/inspy_logger/tool/config/arguments/__init__.py +56 -0
- inspy_logger-3.0.2/inspy_logger/version.py +240 -0
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/pyproject.toml +6 -2
- inspy_logger-3.0.dev5/inspy_logger/Scripts/main.py +0 -91
- inspy_logger-3.0.dev5/inspy_logger/helpers/cache.py +0 -140
- inspy_logger-3.0.dev5/inspy_logger/version.py +0 -287
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/LICENSE.md +0 -0
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/README.md +0 -0
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/inspy_logger/errors/__init__.py +0 -0
- {inspy_logger-3.0.dev5 → inspy_logger-3.0.2}/inspy_logger/manifest.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: inspy-logger
|
|
3
|
-
Version: 3.0.
|
|
3
|
+
Version: 3.0.2
|
|
4
4
|
Summary: Colorable, scalable logger for CLI
|
|
5
5
|
Home-page: https://github.com/Inspyre-Softworks/inSPy-Logger
|
|
6
6
|
License: MIT
|
|
@@ -32,7 +32,7 @@ Requires-Dist: luddite (>=1.0.1,<2.0.0)
|
|
|
32
32
|
Requires-Dist: packaging (>=21.0,<22.0)
|
|
33
33
|
Requires-Dist: python-box (>=6.1.0,<7.0.0)
|
|
34
34
|
Requires-Dist: requests (>=2.28.1,<3.0.0)
|
|
35
|
-
Requires-Dist: rich (>=13.
|
|
35
|
+
Requires-Dist: rich (>=13.7.0,<14.0.0)
|
|
36
36
|
Requires-Dist: setuptools-autover (>=1.0.2,<2.0.0)
|
|
37
37
|
Project-URL: Documentation, https://inspy-logger.readthedocs.io/en/latest/
|
|
38
38
|
Project-URL: Repository, https://github.com/Inspyre-Softworks/inSPy-Logger
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"""
|
|
2
|
+
|
|
3
|
+
File:
|
|
4
|
+
inspy_logger/Scripts/main.py
|
|
5
|
+
|
|
6
|
+
Author:
|
|
7
|
+
Inspyre Softworks
|
|
8
|
+
|
|
9
|
+
"""
|
|
10
|
+
INSPY_LOG_LEVEL = 'info'
|
|
11
|
+
|
|
12
|
+
PROGNAME = 'inspy-logger-tool'
|
|
13
|
+
|
|
14
|
+
from argparse import ArgumentParser
|
|
15
|
+
|
|
16
|
+
from inspy_logger.helpers.debug.environment import fetch_system_info
|
|
17
|
+
from inspy_logger.version import parse_version, PyPiVersionInfo
|
|
18
|
+
|
|
19
|
+
# ---- SET UP PARSER --------------------------------
|
|
20
|
+
|
|
21
|
+
parser = ArgumentParser('inspy-logger-version', description='Displays version information for inspy-logger.')
|
|
22
|
+
|
|
23
|
+
parser.add_argument('-v', '--version', action='version', version=parse_version())
|
|
24
|
+
|
|
25
|
+
# ---- SET UP SUBPARSERS --------------------------------
|
|
26
|
+
|
|
27
|
+
subparsers = parser.add_subparsers(title='subcommands', dest='subcommand')
|
|
28
|
+
|
|
29
|
+
# ---- UPDATE COMMAND --------------------------------
|
|
30
|
+
|
|
31
|
+
update_parser =subparsers.add_parser('update', help='Checks for updates to inspy-logger.')
|
|
32
|
+
|
|
33
|
+
update_parser.add_argument('-p', '--pre-release', action='store_true', help='When checking for updates, include pre-release versions.')
|
|
34
|
+
|
|
35
|
+
# ---- DEBUG COMMAND --------------------------------
|
|
36
|
+
|
|
37
|
+
debug_parser = subparsers.add_parser('debug', help='Fetches a collection of environment information to help debug inspy-logger.')
|
|
38
|
+
|
|
39
|
+
debug_parser.add_argument('-C', '--copy-to-clipboard', action='store_true', help='Copies the debug information to the clipboard.')
|
|
40
|
+
debug_parser.add_argument('-P', '--print', action='store_true', help='Prints the debug information to the console.', default=True)
|
|
41
|
+
|
|
42
|
+
# ---- FORMAT FLAGS --------------------------------
|
|
43
|
+
|
|
44
|
+
fmt_grp = debug_parser.add_mutually_exclusive_group()
|
|
45
|
+
|
|
46
|
+
fmt_grp.add_argument('-M', '--markdown', action='store_true', help='Formats the debug information in Markdown.')
|
|
47
|
+
|
|
48
|
+
fmt_grp.add_argument('-J', '--json', action='store_true', help='Formats the debug information in JSON.')
|
|
49
|
+
|
|
50
|
+
fmt_grp.add_argument('-T', '--text', action='store_true', help='Formats the debug information in plain text.')
|
|
51
|
+
|
|
52
|
+
# Parse the arguments
|
|
53
|
+
parsed_args = parser.parse_args()
|
|
54
|
+
|
|
55
|
+
# END PARSER SETUP
|
|
56
|
+
|
|
57
|
+
if parsed_args.subcommand == 'update':
|
|
58
|
+
INCLUDE_PRE_RELEASE_FOR_UPDATE_CHECK = parsed_args.pre_release
|
|
59
|
+
else:
|
|
60
|
+
INCLUDE_PRE_RELEASE_FOR_UPDATE_CHECK = False
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
def main():
|
|
64
|
+
|
|
65
|
+
version = PyPiVersionInfo()
|
|
66
|
+
|
|
67
|
+
ACTIONS = {
|
|
68
|
+
'default': version.print_version_info,
|
|
69
|
+
'update': version.update,
|
|
70
|
+
'debug': fetch_system_info,
|
|
71
|
+
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
if parsed_args.subcommand is None:
|
|
75
|
+
parsed_args.subcommand = 'default'
|
|
76
|
+
|
|
77
|
+
if parsed_args.subcommand == 'debug':
|
|
78
|
+
|
|
79
|
+
if (
|
|
80
|
+
parsed_args.markdown
|
|
81
|
+
or not parsed_args.json
|
|
82
|
+
and not parsed_args.text
|
|
83
|
+
):
|
|
84
|
+
fmt = 'markdown'
|
|
85
|
+
elif parsed_args.json:
|
|
86
|
+
fmt = 'json'
|
|
87
|
+
else:
|
|
88
|
+
fmt = 'text'
|
|
89
|
+
|
|
90
|
+
fetch_system_info(copy_to_clipboard=parsed_args.copy_to_clipboard, format_type=fmt, print_to_console=parsed_args.print)
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
return parsed_args
|
|
96
|
+
|
|
97
|
+
if __name__ == '__main__':
|
|
98
|
+
main()
|
|
@@ -11,24 +11,13 @@ Since:
|
|
|
11
11
|
v2.1.1
|
|
12
12
|
|
|
13
13
|
"""
|
|
14
|
+
from typing import List, Tuple
|
|
15
|
+
|
|
14
16
|
from inspy_logger.version import parse_version
|
|
15
17
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
18
|
+
__PROG__ = 'inSPy-Logger'
|
|
19
|
+
__VERSION__: str = parse_version()
|
|
20
|
+
__AUTHORS__: list[tuple[str, str]] = [
|
|
19
21
|
('Inspyre-Softworks', 'https://inspyre.tech'),
|
|
20
22
|
('Taylor-Jayde Blackstone', '<t.blackstone@inspyre.tech')
|
|
21
23
|
]
|
|
22
|
-
|
|
23
|
-
'''
|
|
24
|
-
File Change History:
|
|
25
|
-
11/5/22 - 4:21 AM (v2.1.2):
|
|
26
|
-
- Added description to docstring. (target: 2.1.2)
|
|
27
|
-
|
|
28
|
-
11/5/22 - 4:41 AM:
|
|
29
|
-
- Version bump (target: 2.1.3)
|
|
30
|
-
|
|
31
|
-
08/16/2023 - 13:49 (v3.0):
|
|
32
|
-
- Version bump (v2.1.3 -> v3.0-dev.1)
|
|
33
|
-
|
|
34
|
-
'''
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
import sys
|
|
3
|
+
from inspy_logger.common import PROG_NAME, DEFAULT_LOGGING_LEVEL
|
|
4
|
+
from inspy_logger.helpers import find_variable_in_call_stack, check_preemptive_level_set, find_argument_parser
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
from inspy_logger.helpers import (
|
|
8
|
+
translate_to_logging_level,
|
|
9
|
+
clean_module_name,
|
|
10
|
+
CustomFormatter,
|
|
11
|
+
determine_client_prog_name,
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
from inspy_logger.engine import Logger
|
|
15
|
+
|
|
16
|
+
__all__ = [
|
|
17
|
+
"PROG_NAME",
|
|
18
|
+
"DEFAULT_LOGGING_LEVEL",
|
|
19
|
+
"translate_to_logging_level",
|
|
20
|
+
"clean_module_name",
|
|
21
|
+
"CustomFormatter",
|
|
22
|
+
"Logger",
|
|
23
|
+
"LOG_DEVICE",
|
|
24
|
+
"client_prog_name",
|
|
25
|
+
"determine_level"
|
|
26
|
+
]
|
|
27
|
+
|
|
28
|
+
LOG_DEVICE = Logger(PROG_NAME)
|
|
29
|
+
|
|
30
|
+
MODULE_OBJ = sys.modules[__name__]
|
|
31
|
+
|
|
32
|
+
client_prog_name = determine_client_prog_name()
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def determine_level():
|
|
37
|
+
"""
|
|
38
|
+
Determines the level at which to output logs to the console.
|
|
39
|
+
|
|
40
|
+
Returns:
|
|
41
|
+
int:
|
|
42
|
+
The level at which to output logs to the console.
|
|
43
|
+
"""
|
|
44
|
+
global client_prog_name
|
|
45
|
+
level = DEFAULT_LOGGING_LEVEL
|
|
46
|
+
|
|
47
|
+
_preemptive_set = check_preemptive_level_set()
|
|
48
|
+
|
|
49
|
+
if _preemptive_set:
|
|
50
|
+
level = translate_to_logging_level(_preemptive_set)
|
|
51
|
+
|
|
52
|
+
if client_prog_name:
|
|
53
|
+
arg_parser = find_argument_parser()
|
|
54
|
+
if arg_parser:
|
|
55
|
+
from inspy_logger.helpers.command_line import add_argument
|
|
56
|
+
add_argument(arg_parser, level)
|
|
57
|
+
args = arg_parser.parse_args()
|
|
58
|
+
|
|
59
|
+
level = translate_to_logging_level(args.log_level)
|
|
60
|
+
|
|
61
|
+
return level
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
LOG_DEVICE.set_level(determine_level())
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
if client_prog_name:
|
|
68
|
+
PROG_LOGGER = Logger(client_prog_name, LOG_DEVICE.console_level, LOG_DEVICE.file_level)
|
|
69
|
+
__all__.append('PROG_LOGGER')
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
InspyLogger = Logger
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
LOG_DEVICE.replay_and_setup_handlers()
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
|
|
3
|
+
from inspy_logger.__about__ import __PROG__ as PROG_NAME, __VERSION__ as PROG_VERSION
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
__all__ = [
|
|
7
|
+
"PROG_NAME",
|
|
8
|
+
"PROG_VERSION",
|
|
9
|
+
"LEVEL_MAP",
|
|
10
|
+
"LEVELS",
|
|
11
|
+
"DEFAULT_LOGGING_LEVEL",
|
|
12
|
+
"InspyLogger"
|
|
13
|
+
]
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
LEVEL_MAP = {
|
|
17
|
+
'debug': logging.DEBUG,
|
|
18
|
+
'info': logging.INFO,
|
|
19
|
+
'warning': logging.WARNING,
|
|
20
|
+
'error': logging.ERROR,
|
|
21
|
+
'critical': logging.CRITICAL,
|
|
22
|
+
'fatal': logging.FATAL,
|
|
23
|
+
}
|
|
24
|
+
"""A mapping of level names to their corresponding logging levels."""
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
LEVELS = list(LEVEL_MAP.values())
|
|
28
|
+
"""The list of level names."""
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
DEFAULT_LOGGING_LEVEL = logging.DEBUG
|
|
32
|
+
"""The default logging level."""
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
class InspyLogger:
|
|
36
|
+
pass
|