Skip to content

Commit 9a378ed

Browse files
authored
Merge pull request #5 from meet86/v1.1.0
V1.1.0
2 parents 8218ad0 + 0d8aec5 commit 9a378ed

File tree

3 files changed

+13
-7
lines changed

3 files changed

+13
-7
lines changed

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
# Datadog Custom Logger
2-
[![PyPI version](https://badge.fury.io/py/datadog-custom-logger.svg)](https://badge.fury.io/py/datadog-custom-logger) [![Open in VS Code](https://open.vscode.dev/badges/open-in-vscode.svg)](https://open.vscode.dev/meet86/datadog-custom-logger)
2+
[![PyPI](https://img.shields.io/pypi/v/datadog-custom-logger)](https://pypi.org/project/datadog-custom-logger/)
3+
[![Open in VS Code](https://open.vscode.dev/badges/open-in-vscode.svg)](https://open.vscode.dev/meet86/datadog-custom-logger)
34

45
## Usage
56

67
### Steps
78
- Install pip package
89

910
```shell
10-
pip install datadog-custom-logger==0.1.0
11+
pip install datadog-custom-logger
1112
```
1213
- Import package
1314

datadog_custom_logger/handler.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import os
22
import logging
3+
import datetime
34
from dateutil.parser import parse as dateutil_parser
45

56
# Datadog python client dependencies.
@@ -18,10 +19,11 @@
1819

1920
class DatadogCustomLogHandler(logging.Handler):
2021

21-
def __init__(self, tags=None, ** kwargs):
22+
def __init__(self, tags=None, service="default", ** kwargs):
2223
super(DatadogCustomLogHandler, self).__init__(**kwargs)
2324

2425
self.tags = tags
26+
self.service = service
2527

2628
def emit(self, record):
2729
text = self.format(record)
@@ -39,13 +41,16 @@ def emit(self, record):
3941

4042
# configuration.api_key['apiKeyAuth'] = os.environ['DD_CLIENT_API_KEY']
4143

44+
# Get UTC time and format it into default Datadog Python log pipeline standards.
45+
time = datetime.datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S,%f')[:-3]
46+
4247
with ApiClient(configuration) as api_client:
4348
api_instance = logs_api.LogsApi(api_client)
4449
body = HTTPLog([
4550
HTTPLogItem(
4651
ddsource="python",
47-
message=f"{record.levelname.upper()}:: {create_args['text']}",
48-
service="AZF",
52+
message=f"{time} {record.levelname.upper()} :: {create_args['text']}",
53+
service=self.service,
4954
ddtags=self.tags +
5055
f",level:{record.levelname}" if self.tags is not None else f"level:{record.levelname}"
5156
)
@@ -54,4 +59,4 @@ def emit(self, record):
5459
api_response = api_instance.submit_log(body)
5560
except ApiException as e:
5661
logging.info(
57-
"Exception when calling LogsApi->submit_log: %s\n" % e)
62+
"Exception when calling LogsApi->submit_log: %s\n" % e)

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
setuptools.setup(
1414
name="datadog-custom-logger",
15-
version="1.0.0",
15+
version="1.1.0",
1616
author="Meet Vasani",
1717
author_email="meet.vasani86@gmail.com",
1818
description="Logger Tool for Datadog logs monitoring",

0 commit comments

Comments
 (0)