summaryrefslogtreecommitdiffstats
path: root/pike
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 /pike
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
Diffstat (limited to 'pike')
-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
4 files changed, 49 insertions, 95 deletions
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