9899009438243e976f573fa03e9015f8e7341cbe
1 # -*- coding: utf-8 -*-
3 # Copyright 2018 Whitestack, LLC
4 # *************************************************************
6 # This file is part of OSM Monitoring module
7 # All Rights Reserved to Whitestack, LLC
9 # Licensed under the Apache License, Version 2.0 (the "License"); you may
10 # not use this file except in compliance with the License. You may obtain
11 # a copy of the License at
13 # http://www.apache.org/licenses/LICENSE-2.0
15 # Unless required by applicable law or agreed to in writing, software
16 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
17 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
18 # License for the specific language governing permissions and limitations
21 # For those usages not covered by the Apache License, Version 2.0 please
22 # contact: bdiaz@whitestack.com or glavado@whitestack.com
23 ##"""Global Configuration."""
27 from osm_policy_module
.core
.singleton
import Singleton
30 from configparser
import ConfigParser
32 from ConfigParser
import ConfigParser
34 log
= logging
.getLogger(__name__
)
39 """Global configuration."""
42 # Default config values
45 'kafka_server_host': '127.0.0.1',
46 'kafka_server_port': '9092',
49 'enable_logstash_handler': 'false',
50 'logstash_host': 'logstash',
51 'logstash_port': '5000'
55 def load_file(self
, config_file_path
):
57 config_parser
= ConfigParser()
58 config_parser
.read(config_file_path
)
59 for section
in config_parser
.sections():
60 for key
, value
in config_parser
.items(section
):
61 if section
not in self
.config
:
62 self
.config
[section
] = {}
63 self
.config
[section
][key
] = value
65 def get(self
, group
, name
=None, default
=None):
66 if group
in self
.config
:
68 return self
.config
[group
]
69 return self
.config
[group
].get(name
, default
)
73 return str(self
.config
)