summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBin Yang <bin.yang@windriver.com>2021-08-19 13:11:03 +0800
committerBin Yang <bin.yang@windriver.com>2021-08-19 16:19:25 +0800
commitf96919ba694a1086f989074e1f5972ea5621eaf8 (patch)
tree4f4fda08538d709ea46fa28b29ad111a805dfee6
parentd389053df48d5fb142ab2264d4157fb32a8afab2 (diff)
Remove dependency to onaplog package
due to it is not supported python3.8 Issue-ID: MULTICLOUD-1382 Signed-off-by: Bin Yang <bin.yang@windriver.com> Change-Id: I616edd885070724aa4daea3a3220547e2108531e
-rw-r--r--fcaps/fcaps/middleware.py64
-rw-r--r--fcaps/fcaps/pub/config/log.yml9
-rw-r--r--fcaps/fcaps/settings.py53
-rw-r--r--fcaps/requirements.txt3
-rw-r--r--pike/pike/middleware.py76
-rw-r--r--pike/pike/pub/config/log.yml10
-rw-r--r--pike/pike/settings.py54
-rw-r--r--pike/requirements.txt4
-rw-r--r--starlingx/requirements.txt3
-rw-r--r--starlingx/starlingx/middleware.py64
-rw-r--r--starlingx/starlingx/pub/config/log.yml13
-rw-r--r--starlingx/starlingx/settings.py52
-rw-r--r--windriver/requirements.txt3
-rw-r--r--windriver/titanium_cloud/middleware.py64
-rw-r--r--windriver/titanium_cloud/pub/config/log.yml9
-rw-r--r--windriver/titanium_cloud/settings.py55
16 files changed, 188 insertions, 348 deletions
diff --git a/fcaps/fcaps/middleware.py b/fcaps/fcaps/middleware.py
deleted file mode 100644
index e6804f08..00000000
--- a/fcaps/fcaps/middleware.py
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright (c) 2017-2019 Wind River Systems, Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-import uuid
-from django.conf import settings
-from onaplogging.mdcContext import MDC
-
-FORWARDED_FOR_FIELDS = ["HTTP_X_FORWARDED_FOR", "HTTP_X_FORWARDED_HOST",
- "HTTP_X_FORWARDED_SERVER"]
-
-
-class LogContextMiddleware(object):
-
- # the last IP behind multiple proxies, if no exist proxies
- # get local host ip.
- def _getLastIp(self, request):
-
- ip = ""
- try:
- for field in FORWARDED_FOR_FIELDS:
- if field in request.META:
- if ',' in request.META[field]:
- parts = request.META[field].split(',')
- ip = parts[-1].strip().split(":")[0]
- else:
- ip = request.META[field].split(":")[0]
-
- if ip == "":
- ip = request.META.get("HTTP_HOST").split(":")[0]
-
- except Exception:
- pass
-
- return ip
-
- def process_request(self, request):
- # fetch propageted Id from other component. if do not fetch id,
- # generate one.
- ReqeustID = request.META.get("HTTP_X_TRANSACTIONID", None)
- if ReqeustID is None:
- ReqeustID = str(uuid.uuid3(uuid.NAMESPACE_URL, settings.MULTIVIM_VERSION))
- MDC.put("requestID", ReqeustID)
- # generate the reqeust id
- InvocationID = str(uuid.uuid4())
- MDC.put("invocationID", InvocationID)
- MDC.put("serviceName", settings.MULTIVIM_VERSION)
- MDC.put("serviceIP", self._getLastIp(request))
- return None
-
- def process_response(self, request, response):
-
- MDC.clear()
- return response
diff --git a/fcaps/fcaps/pub/config/log.yml b/fcaps/fcaps/pub/config/log.yml
index ad27b50f..71ebe2bc 100644
--- a/fcaps/fcaps/pub/config/log.yml
+++ b/fcaps/fcaps/pub/config/log.yml
@@ -23,16 +23,9 @@ handlers:
level: "DEBUG"
class: "logging.handlers.RotatingFileHandler"
filename: "/var/log/onap/multicloud/openstack/fcaps/fcaps.log"
- formatter: "mdcFormat"
+ formatter: "standard"
maxBytes: 52428800
backupCount: 10
formatters:
standard:
format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
- mdcFormat:
- format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
- mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
- datefmt: "%Y-%m-%d %H:%M:%S"
- (): onaplogging.mdcformatter.MDCFormatter
-
-
diff --git a/fcaps/fcaps/settings.py b/fcaps/fcaps/settings.py
index 979c1519..37021e05 100644
--- a/fcaps/fcaps/settings.py
+++ b/fcaps/fcaps/settings.py
@@ -14,10 +14,9 @@
import os
import sys
-
-from logging import config
-from onaplogging import monkey
-monkey.patch_all()
+import platform
+import yaml
+from logging import config as log_config
CACHE_EXPIRATION_TIME = 3600
@@ -56,7 +55,6 @@ MIDDLEWARE_CLASSES = [
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
- 'fcaps.middleware.LogContextMiddleware',
]
ROOT_URLCONF = 'fcaps.urls'
@@ -124,10 +122,47 @@ OPENSTACK_VERSION = "fcaps"
MULTIVIM_VERSION = "multicloud-" + OPENSTACK_VERSION
-LOGGING_CONFIG = None
-# yaml configuration of logging
-LOGGING_FILE = os.path.join(BASE_DIR, 'fcaps/pub/config/log.yml')
-config.yamlConfig(filepath=LOGGING_FILE, watchDog=True)
+if platform.system() == 'Windows' or 'test' in sys.argv:
+ LOGGING = {
+ 'version': 1,
+ 'disable_existing_loggers': True,
+ 'formatters': {
+ 'standard': {
+ 'format': '%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s',
+ },
+ },
+ 'filters': {
+ },
+ 'handlers': {
+ 'file_handler': {
+ 'level': 'DEBUG',
+ 'class': 'logging.handlers.RotatingFileHandler',
+ 'filename': os.path.join(BASE_DIR, 'logs/test.log'),
+ 'formatter': 'standard',
+ 'maxBytes': 1024 * 1024 * 50,
+ 'backupCount': 5,
+ },
+ },
+
+ 'loggers': {
+ 'common': {
+ 'handlers': ['file_handler'],
+ 'level': 'DEBUG',
+ 'propagate': False
+ },
+ }
+ }
+else:
+ log_path = "/var/log/onap/multicloud/openstack/fcaps"
+ if not os.path.exists(log_path):
+ os.makedirs(log_path)
+
+ LOGGING_CONFIG = None
+ # yaml configuration of logging
+ LOGGING_FILE = os.path.join(BASE_DIR, 'fcaps/pub/config/log.yml')
+ with open(file=LOGGING_FILE, mode='r', encoding="utf-8")as file:
+ logging_yaml = yaml.load(stream=file, Loader=yaml.FullLoader)
+ log_config.dictConfig(config=logging_yaml)
if 'test' in sys.argv:
diff --git a/fcaps/requirements.txt b/fcaps/requirements.txt
index 98db366b..9db93b23 100644
--- a/fcaps/requirements.txt
+++ b/fcaps/requirements.txt
@@ -19,8 +19,7 @@ python-memcached
# mock==2.0.0
# unittest_xml_reporting==1.12.0
-# for onap logging
-onappylog>=1.0.9
+PyYAML==5.3.1
# for background tasks
celery >= 4.0
diff --git a/pike/pike/middleware.py b/pike/pike/middleware.py
deleted file mode 100644
index 0697b81d..00000000
--- a/pike/pike/middleware.py
+++ /dev/null
@@ -1,76 +0,0 @@
-'''
-This is middle module
-'''
-# Copyright (c) 2017-2018 Wind River Systems, Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-import uuid
-from django.conf import settings
-from onaplogging.mdcContext import MDC
-
-FORWARDED_FOR_FIELDS = ["HTTP_X_FORWARDED_FOR", "HTTP_X_FORWARDED_HOST",
- "HTTP_X_FORWARDED_SERVER"]
-
-
-class LogContextMiddleware:
- '''
- log context middleware
- '''
-
- def _get_last_ip(self, request):
- '''
- the last IP behind multiple proxies, if no exist proxies
- get local host ip.
- '''
- local_ip = ""
- try:
- for field in FORWARDED_FOR_FIELDS:
- if field in request.META:
- if ',' in request.META[field]:
- parts = request.META[field].split(',')
- local_ip = parts[-1].strip().split(":")[0]
- else:
- local_ip = request.META[field].split(":")[0]
-
- if local_ip == "":
- local_ip = request.META.get("HTTP_HOST").split(":")[0]
-
- except Exception:
- pass
-
- return local_ip
-
- def process_request(self, request):
- '''
- process request
- '''
- # fetch propageted Id from other component. if do not fetch id,
- # generate one.
- reqeust_id = request.META.get("HTTP_X_TRANSACTIONID", None)
- if reqeust_id is None:
- reqeust_id = str(uuid.uuid3(uuid.NAMESPACE_URL, settings.MULTIVIM_VERSION))
- MDC.put("requestID", reqeust_id)
- # generate the reqeust id
- invocation_id = str(uuid.uuid4())
- MDC.put("invocationID", invocation_id)
- MDC.put("serviceName", settings.MULTIVIM_VERSION)
- MDC.put("serviceIP", self._get_last_ip(request))
- return None
-
- def process_response(self, response):
- '''
- process response
- '''
- MDC.clear()
- return response
diff --git a/pike/pike/pub/config/log.yml b/pike/pike/pub/config/log.yml
index bb7b3a3d..22b96923 100644
--- a/pike/pike/pub/config/log.yml
+++ b/pike/pike/pub/config/log.yml
@@ -36,20 +36,14 @@ handlers:
console_handler:
level: "DEBUG"
class: "logging.StreamHandler"
- formatter: "mdcFormat"
+ formatter: "standard"
file_handler:
level: "DEBUG"
class: "logging.handlers.RotatingFileHandler"
filename: "/var/log/onap/multicloud/openstack/pike/pike.log"
- formatter: "mdcFormat"
+ formatter: "standard"
maxBytes: 52428800
backupCount: 10
formatters:
standard:
format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
- mdcFormat:
- format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
- mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
- datefmt: "%Y-%m-%d %H:%M:%S"
- (): onaplogging.mdcformatter.MDCFormatter
-
diff --git a/pike/pike/settings.py b/pike/pike/settings.py
index d946383b..83c7415f 100644
--- a/pike/pike/settings.py
+++ b/pike/pike/settings.py
@@ -14,10 +14,9 @@
import os
import sys
-
-from logging import config
-from onaplogging import monkey
-monkey.patch_all()
+import yaml
+import platform
+from logging import config as log_config
CACHE_EXPIRATION_TIME = 3600
@@ -55,7 +54,6 @@ MIDDLEWARE_CLASSES = [
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
- 'pike.middleware.LogContextMiddleware',
]
ROOT_URLCONF = 'pike.urls'
@@ -124,10 +122,48 @@ ROOT_PATH = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__fi
OPENSTACK_VERSION = "pike"
MULTIVIM_VERSION = "multicloud-" + OPENSTACK_VERSION
-LOGGING_CONFIG = None
-# yaml configuration of logging
-LOGGING_FILE = os.path.join(BASE_DIR, 'pike/pub/config/log.yml')
-config.yamlConfig(filepath=LOGGING_FILE, watchDog=True)
+
+if platform.system() == 'Windows' or 'test' in sys.argv:
+ LOGGING = {
+ 'version': 1,
+ 'disable_existing_loggers': True,
+ 'formatters': {
+ 'standard': {
+ 'format': '%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s',
+ },
+ },
+ 'filters': {
+ },
+ 'handlers': {
+ 'file_handler': {
+ 'level': 'DEBUG',
+ 'class': 'logging.handlers.RotatingFileHandler',
+ 'filename': os.path.join(BASE_DIR, 'logs/test.log'),
+ 'formatter': 'standard',
+ 'maxBytes': 1024 * 1024 * 50,
+ 'backupCount': 5,
+ },
+ },
+
+ 'loggers': {
+ 'common': {
+ 'handlers': ['file_handler'],
+ 'level': 'DEBUG',
+ 'propagate': False
+ },
+ }
+ }
+else:
+ log_path = "/var/log/onap/multicloud/openstack/pike"
+ if not os.path.exists(log_path):
+ os.makedirs(log_path)
+
+ LOGGING_CONFIG = None
+ # yaml configuration of logging
+ LOGGING_FILE = os.path.join(BASE_DIR, 'pike/pub/config/log.yml')
+ with open(file=LOGGING_FILE, mode='r', encoding="utf-8")as file:
+ logging_yaml = yaml.load(stream=file, Loader=yaml.FullLoader)
+ log_config.dictConfig(config=logging_yaml)
if 'test' in sys.argv:
diff --git a/pike/requirements.txt b/pike/requirements.txt
index f7a5470c..850a52e6 100644
--- a/pike/requirements.txt
+++ b/pike/requirements.txt
@@ -35,6 +35,6 @@ ruamel.yaml==0.16.10
# mock==2.0.0
# unittest_xml_reporting==1.12.0
-# for onap logging
-onappylog>=1.0.9
+PyYAML==5.3.1
+
onaphpadriver>=1.0
diff --git a/starlingx/requirements.txt b/starlingx/requirements.txt
index e92acdad..3623b817 100644
--- a/starlingx/requirements.txt
+++ b/starlingx/requirements.txt
@@ -35,5 +35,4 @@ ruamel.yaml==0.16.10
# mock==2.0.0
# unittest_xml_reporting==1.12.0
-# for onap logging
-onappylog>=1.0.9
+PyYAML==5.3.1 \ No newline at end of file
diff --git a/starlingx/starlingx/middleware.py b/starlingx/starlingx/middleware.py
deleted file mode 100644
index a2851d3d..00000000
--- a/starlingx/starlingx/middleware.py
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright (c) 2019 Intel Corporation.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-import uuid
-from django.conf import settings
-from onaplogging.mdcContext import MDC
-
-FORWARDED_FOR_FIELDS = ["HTTP_X_FORWARDED_FOR", "HTTP_X_FORWARDED_HOST",
- "HTTP_X_FORWARDED_SERVER"]
-
-
-class LogContextMiddleware(object):
-
- # the last IP behind multiple proxies, if no exist proxies
- # get local host ip.
- def _getLastIp(self, request):
-
- ip = ""
- try:
- for field in FORWARDED_FOR_FIELDS:
- if field in request.META:
- if ',' in request.META[field]:
- parts = request.META[field].split(',')
- ip = parts[-1].strip().split(":")[0]
- else:
- ip = request.META[field].split(":")[0]
-
- if ip == "":
- ip = request.META.get("HTTP_HOST").split(":")[0]
-
- except Exception:
- pass
-
- return ip
-
- def process_request(self, request):
- # fetch propageted Id from other component. if do not fetch id,
- # generate one.
- ReqeustID = request.META.get("HTTP_X_TRANSACTIONID", None)
- if ReqeustID is None:
- ReqeustID = str(uuid.uuid3(uuid.NAMESPACE_URL, settings.MULTIVIM_VERSION))
- MDC.put("requestID", ReqeustID)
- # generate the reqeust id
- InvocationID = str(uuid.uuid4())
- MDC.put("invocationID", InvocationID)
- MDC.put("serviceName", settings.MULTIVIM_VERSION)
- MDC.put("serviceIP", self._getLastIp(request))
- return None
-
- def process_response(self, request, response):
-
- MDC.clear()
- return response
diff --git a/starlingx/starlingx/pub/config/log.yml b/starlingx/starlingx/pub/config/log.yml
index 4e3e248b..ef68a653 100644
--- a/starlingx/starlingx/pub/config/log.yml
+++ b/starlingx/starlingx/pub/config/log.yml
@@ -36,20 +36,11 @@ handlers:
console_handler:
level: "DEBUG"
class: "logging.StreamHandler"
- formatter: "mdcFormat"
+ formatter: "standard"
file_handler:
level: "DEBUG"
class: "logging.handlers.RotatingFileHandler"
filename: "/var/log/onap/multicloud/openstack/starlingx/starlingx.log"
- formatter: "mdcFormat"
+ formatter: "standard"
maxBytes: 52428800
backupCount: 10
-formatters:
- standard:
- format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
- mdcFormat:
- format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
- mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
- datefmt: "%Y-%m-%d %H:%M:%S"
- (): onaplogging.mdcformatter.MDCFormatter
-
diff --git a/starlingx/starlingx/settings.py b/starlingx/starlingx/settings.py
index 56547ce2..d0eafd59 100644
--- a/starlingx/starlingx/settings.py
+++ b/starlingx/starlingx/settings.py
@@ -14,10 +14,10 @@
import os
import sys
+import platform
+import yaml
+from logging import config as log_config
-from logging import config
-from onaplogging import monkey
-monkey.patch_all()
CACHE_EXPIRATION_TIME = 3600
@@ -55,7 +55,6 @@ MIDDLEWARE_CLASSES = [
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
- 'starlingx.middleware.LogContextMiddleware',
]
ROOT_URLCONF = 'starlingx.urls'
@@ -124,10 +123,47 @@ ROOT_PATH = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__fi
OPENSTACK_VERSION = "starlingx"
MULTIVIM_VERSION = "multicloud-" + OPENSTACK_VERSION
-LOGGING_CONFIG = None
-# yaml configuration of logging
-LOGGING_FILE = os.path.join(BASE_DIR, 'starlingx/pub/config/log.yml')
-config.yamlConfig(filepath=LOGGING_FILE, watchDog=True)
+if platform.system() == 'Windows' or 'test' in sys.argv:
+ LOGGING = {
+ 'version': 1,
+ 'disable_existing_loggers': True,
+ 'formatters': {
+ 'standard': {
+ 'format': '%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s',
+ },
+ },
+ 'filters': {
+ },
+ 'handlers': {
+ 'file_handler': {
+ 'level': 'DEBUG',
+ 'class': 'logging.handlers.RotatingFileHandler',
+ 'filename': os.path.join(BASE_DIR, 'logs/test.log'),
+ 'formatter': 'standard',
+ 'maxBytes': 1024 * 1024 * 50,
+ 'backupCount': 5,
+ },
+ },
+
+ 'loggers': {
+ 'common': {
+ 'handlers': ['file_handler'],
+ 'level': 'DEBUG',
+ 'propagate': False
+ },
+ }
+ }
+else:
+ log_path = "/var/log/onap/multicloud/openstack/starlingx"
+ if not os.path.exists(log_path):
+ os.makedirs(log_path)
+
+ LOGGING_CONFIG = None
+ # yaml configuration of logging
+ LOGGING_FILE = os.path.join(BASE_DIR, 'starlingx/pub/config/log.yml')
+ with open(file=LOGGING_FILE, mode='r', encoding="utf-8")as file:
+ logging_yaml = yaml.load(stream=file, Loader=yaml.FullLoader)
+ log_config.dictConfig(config=logging_yaml)
if 'test' in sys.argv:
diff --git a/windriver/requirements.txt b/windriver/requirements.txt
index 19e9b1eb..72bcb961 100644
--- a/windriver/requirements.txt
+++ b/windriver/requirements.txt
@@ -21,8 +21,7 @@ ruamel.yaml==0.16.10
# mock==2.0.0
# unittest_xml_reporting==1.12.0
-# for onap logging
-onappylog>=1.0.9
+PyYAML==5.3.1
# for background tasks
# celery >= 4.0
diff --git a/windriver/titanium_cloud/middleware.py b/windriver/titanium_cloud/middleware.py
deleted file mode 100644
index 4f19da08..00000000
--- a/windriver/titanium_cloud/middleware.py
+++ /dev/null
@@ -1,64 +0,0 @@
-# Copyright (c) 2017-2018 Wind River Systems, Inc.
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-import uuid
-from django.conf import settings
-from onaplogging.mdcContext import MDC
-
-FORWARDED_FOR_FIELDS = ["HTTP_X_FORWARDED_FOR", "HTTP_X_FORWARDED_HOST",
- "HTTP_X_FORWARDED_SERVER"]
-
-
-class LogContextMiddleware(object):
-
- # the last IP behind multiple proxies, if no exist proxies
- # get local host ip.
- def _getLastIp(self, request):
-
- ip = ""
- try:
- for field in FORWARDED_FOR_FIELDS:
- if field in request.META:
- if ',' in request.META[field]:
- parts = request.META[field].split(',')
- ip = parts[-1].strip().split(":")[0]
- else:
- ip = request.META[field].split(":")[0]
-
- if ip == "":
- ip = request.META.get("HTTP_HOST").split(":")[0]
-
- except Exception:
- pass
-
- return ip
-
- def process_request(self, request):
- # fetch propageted Id from other component. if do not fetch id,
- # generate one.
- ReqeustID = request.META.get("HTTP_X_TRANSACTIONID", None)
- if ReqeustID is None:
- ReqeustID = str(uuid.uuid3(uuid.NAMESPACE_URL, settings.MULTIVIM_VERSION))
- MDC.put("requestID", ReqeustID)
- # generate the reqeust id
- InvocationID = str(uuid.uuid4())
- MDC.put("invocationID", InvocationID)
- MDC.put("serviceName", settings.MULTIVIM_VERSION)
- MDC.put("serviceIP", self._getLastIp(request))
- return None
-
- def process_response(self, request, response):
-
- MDC.clear()
- return response
diff --git a/windriver/titanium_cloud/pub/config/log.yml b/windriver/titanium_cloud/pub/config/log.yml
index ca3a5497..280980d0 100644
--- a/windriver/titanium_cloud/pub/config/log.yml
+++ b/windriver/titanium_cloud/pub/config/log.yml
@@ -23,16 +23,9 @@ handlers:
level: "DEBUG"
class: "logging.handlers.RotatingFileHandler"
filename: "/var/log/onap/multicloud/openstack/windriver/titanium_cloud.log"
- formatter: "mdcFormat"
+ formatter: "standard"
maxBytes: 52428800
backupCount: 10
formatters:
standard:
format: "%(asctime)s|||||%(name)s||%(thread)||%(funcName)s||%(levelname)s||%(message)s"
- mdcFormat:
- format: "%(asctime)s|||||%(name)s||%(thread)s||%(funcName)s||%(levelname)s||%(message)s||||%(mdc)s \t"
- mdcfmt: "{requestID} {invocationID} {serviceName} {serviceIP}"
- datefmt: "%Y-%m-%d %H:%M:%S"
- (): onaplogging.mdcformatter.MDCFormatter
-
-
diff --git a/windriver/titanium_cloud/settings.py b/windriver/titanium_cloud/settings.py
index a4d7f631..eee2f1d6 100644
--- a/windriver/titanium_cloud/settings.py
+++ b/windriver/titanium_cloud/settings.py
@@ -14,11 +14,9 @@
import os
import sys
-
-from logging import config
-from onaplogging import monkey
-monkey.patch_all()
-
+import platform
+import yaml
+from logging import config as log_config
CACHE_EXPIRATION_TIME = 3600
@@ -56,7 +54,6 @@ MIDDLEWARE_CLASSES = [
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
- 'titanium_cloud.middleware.LogContextMiddleware',
]
ROOT_URLCONF = 'titanium_cloud.urls'
@@ -122,11 +119,47 @@ ROOT_PATH = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__fi
OPENSTACK_VERSION = "titaniumcloud"
MULTIVIM_VERSION = "multicloud-" + OPENSTACK_VERSION
-
-LOGGING_CONFIG = None
-# yaml configuration of logging
-LOGGING_FILE = os.path.join(BASE_DIR, 'titanium_cloud/pub/config/log.yml')
-config.yamlConfig(filepath=LOGGING_FILE, watchDog=True)
+if platform.system() == 'Windows' or 'test' in sys.argv:
+ LOGGING = {
+ 'version': 1,
+ 'disable_existing_loggers': True,
+ 'formatters': {
+ 'standard': {
+ 'format': '%(asctime)s:[%(name)s]:[%(filename)s]-[%(lineno)d] [%(levelname)s]:%(message)s',
+ },
+ },
+ 'filters': {
+ },
+ 'handlers': {
+ 'file_handler': {
+ 'level': 'DEBUG',
+ 'class': 'logging.handlers.RotatingFileHandler',
+ 'filename': os.path.join(BASE_DIR, 'logs/test.log'),
+ 'formatter': 'standard',
+ 'maxBytes': 1024 * 1024 * 50,
+ 'backupCount': 5,
+ },
+ },
+
+ 'loggers': {
+ 'common': {
+ 'handlers': ['file_handler'],
+ 'level': 'DEBUG',
+ 'propagate': False
+ },
+ }
+ }
+else:
+ log_path = "/var/log/onap/multicloud/openstack/windriver"
+ if not os.path.exists(log_path):
+ os.makedirs(log_path)
+
+ LOGGING_CONFIG = None
+ # yaml configuration of logging
+ LOGGING_FILE = os.path.join(BASE_DIR, 'titanium_cloud/pub/config/log.yml')
+ with open(file=LOGGING_FILE, mode='r', encoding="utf-8")as file:
+ logging_yaml = yaml.load(stream=file, Loader=yaml.FullLoader)
+ log_config.dictConfig(config=logging_yaml)
if 'test' in sys.argv: