Skip to content

Commit 0319d90

Browse files
authored
Merge pull request #96 from deep-compute/feature-minimal-logger
Feature minimal logger
2 parents 6a45865 + f495c50 commit 0319d90

4 files changed

Lines changed: 28 additions & 5 deletions

File tree

.travis.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ deploy:
1919
- basescript/utils.py
2020
- examples/adder.py
2121
- examples/helloworld.py
22-
name: basescript-0.3.2
23-
tag_name: 0.3.2
22+
name: basescript-0.3.3
23+
tag_name: 0.3.3
2424
true:
2525
repo: deep-compute/basescript
2626
- provider: pypi

basescript/basescript.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ def __init__(self, args=None):
5454
pre_hooks=self.define_log_pre_format_hooks(),
5555
post_hooks=self.define_log_post_format_hooks(),
5656
metric_grouping_interval=self.args.metric_grouping_interval,
57+
minimal=self.args.minimal,
5758
)
5859

5960
self._flush_metrics_q = log._force_flush_q
@@ -169,6 +170,12 @@ def define_baseargs(self, parser):
169170
action="store_true",
170171
help="To run the code in debug mode",
171172
)
173+
parser.add_argument(
174+
"--minimal",
175+
default=False,
176+
action="store_true",
177+
help="Hide log keys such as id, host",
178+
)
172179

173180
def define_args(self, parser):
174181
"""

basescript/log.py

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,14 @@ def _structlog_default_keys_processor(logger_class, log_method, event):
263263
return event
264264

265265

266+
def _structlog_minimal_processor(logger_class, log_method, event):
267+
for key in ("host", "id", "type"):
268+
if key in event:
269+
event.pop(key)
270+
271+
return event
272+
273+
266274
@keeprunning()
267275
def dump_metrics(log, interval):
268276
global METRICS_STATE
@@ -358,7 +366,9 @@ def define_log_processors():
358366
]
359367

360368

361-
def _configure_logger(fmt, quiet, level, fpath, processors, metric_grouping_interval):
369+
def _configure_logger(
370+
fmt, quiet, level, fpath, processors, metric_grouping_interval, minimal
371+
):
362372
"""
363373
configures a logger when required write to stderr or a file
364374
"""
@@ -376,6 +386,9 @@ def _configure_logger(fmt, quiet, level, fpath, processors, metric_grouping_inte
376386
if metric_grouping_interval:
377387
_processors.append(metrics_grouping_processor)
378388

389+
if minimal:
390+
_processors.append(_structlog_minimal_processor)
391+
379392
streams = []
380393

381394
if fpath:
@@ -418,6 +431,7 @@ def init_logger(
418431
fpath=None,
419432
processors=None,
420433
metric_grouping_interval=None,
434+
minimal=False,
421435
):
422436
"""
423437
fmt=pretty/json controls only stderr; file always gets json.
@@ -434,7 +448,9 @@ def init_logger(
434448
if not fmt and not quiet:
435449
fmt = "pretty" if sys.stderr.isatty() else "json"
436450

437-
_configure_logger(fmt, quiet, level, fpath, processors, metric_grouping_interval)
451+
_configure_logger(
452+
fmt, quiet, level, fpath, processors, metric_grouping_interval, minimal
453+
)
438454

439455
log = structlog.get_logger()
440456
log._force_flush_q = queue.Queue(maxsize=FORCE_FLUSH_Q_SIZE)

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def get_long_description():
2525

2626
long_description = get_long_description()
2727

28-
version = "0.3.2"
28+
version = "0.3.3"
2929
setup(
3030
name="basescript",
3131
version=version,

0 commit comments

Comments
 (0)