diff options
author | Michal Minar <miminar@redhat.com> | 2013-08-22 15:17:40 +0200 |
---|---|---|
committer | Michal Minar <miminar@redhat.com> | 2013-08-23 10:50:18 +0200 |
commit | 45d5c7627eaa5315704ceba2a81998f07c750cde (patch) | |
tree | 4a849d9bacd09a4f3d4e485d05c2c7a3ee36581f | |
parent | 5cc0f9acd68ced1535f54f67a847d4c81eda80f3 (diff) | |
download | openlmi-providers-45d5c7627eaa5315704ceba2a81998f07c750cde.tar.gz openlmi-providers-45d5c7627eaa5315704ceba2a81998f07c750cde.tar.xz openlmi-providers-45d5c7627eaa5315704ceba2a81998f07c750cde.zip |
software: using shared cmpi_logging module
Now, that functionality of lmi.software.util.cmpi_logging is provided by
lmi.providers.cmpi_logging, we can safely move to the shared one.
40 files changed, 41 insertions, 323 deletions
diff --git a/src/software/lmi/software/LMI_AffectedSoftwareJobElement.py b/src/software/lmi/software/LMI_AffectedSoftwareJobElement.py index 7683703..2c92d74 100644 --- a/src/software/lmi/software/LMI_AffectedSoftwareJobElement.py +++ b/src/software/lmi/software/LMI_AffectedSoftwareJobElement.py @@ -26,10 +26,10 @@ from pywbem.cim_provider2 import CIMProvider2 import logging import pywbem +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import AffectedSoftwareJobElement from lmi.software.core import Job -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB class LMI_AffectedSoftwareJobElement(CIMProvider2): diff --git a/src/software/lmi/software/LMI_AssociatedSoftwareInstallationServiceCapabilities.py b/src/software/lmi/software/LMI_AssociatedSoftwareInstallationServiceCapabilities.py index b657631..3cda259 100644 --- a/src/software/lmi/software/LMI_AssociatedSoftwareInstallationServiceCapabilities.py +++ b/src/software/lmi/software/LMI_AssociatedSoftwareInstallationServiceCapabilities.py @@ -25,10 +25,10 @@ Instruments the CIM class LMI_AssociatedSoftwareInstallationServiceCapabilities import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import AssociatedInstallationServiceCapabilities from lmi.software.core import InstallationService from lmi.software.core import InstallationServiceCapabilities -from lmi.software.util import cmpi_logging class LMI_AssociatedSoftwareInstallationServiceCapabilities(CIMProvider2): """Instrument the CIM class \ diff --git a/src/software/lmi/software/LMI_AssociatedSoftwareJobMethodResult.py b/src/software/lmi/software/LMI_AssociatedSoftwareJobMethodResult.py index 08a07d0..46ef67b 100644 --- a/src/software/lmi/software/LMI_AssociatedSoftwareJobMethodResult.py +++ b/src/software/lmi/software/LMI_AssociatedSoftwareJobMethodResult.py @@ -25,10 +25,10 @@ Instruments the CIM class LMI_AssociatedSoftwareJobMethodResult import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import generate_references from lmi.software.core import Job from lmi.software.core import MethodResult -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB @cmpi_logging.trace_function diff --git a/src/software/lmi/software/LMI_HostedSoftwareCollection.py b/src/software/lmi/software/LMI_HostedSoftwareCollection.py index 9682aec..1506126 100644 --- a/src/software/lmi/software/LMI_HostedSoftwareCollection.py +++ b/src/software/lmi/software/LMI_HostedSoftwareCollection.py @@ -25,8 +25,8 @@ Instruments the CIM class LMI_HostedSoftwareCollection import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import ComputerSystem, SystemCollection -from lmi.software.util import cmpi_logging class LMI_HostedSoftwareCollection(CIMProvider2): """Instrument the CIM class LMI_HostedSoftwareCollection diff --git a/src/software/lmi/software/LMI_HostedSoftwareIdentityResource.py b/src/software/lmi/software/LMI_HostedSoftwareIdentityResource.py index 942d1f2..6656493 100644 --- a/src/software/lmi/software/LMI_HostedSoftwareIdentityResource.py +++ b/src/software/lmi/software/LMI_HostedSoftwareIdentityResource.py @@ -28,11 +28,11 @@ Instruments the CIM class LMI_HostedSoftwareIdentityResource import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import generate_references from lmi.software.core import ComputerSystem from lmi.software.core import IdentityResource -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB @cmpi_logging.trace_function diff --git a/src/software/lmi/software/LMI_HostedSoftwareInstallationService.py b/src/software/lmi/software/LMI_HostedSoftwareInstallationService.py index 60f643d..5cd5bfd 100644 --- a/src/software/lmi/software/LMI_HostedSoftwareInstallationService.py +++ b/src/software/lmi/software/LMI_HostedSoftwareInstallationService.py @@ -29,9 +29,9 @@ Instruments the CIM class LMI_HostedSoftwareInstallationService import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import ComputerSystem, InstallationService -from lmi.software.util import cmpi_logging class LMI_HostedSoftwareInstallationService(CIMProvider2): """Instrument the CIM class LMI_HostedSoftwareInstallationService diff --git a/src/software/lmi/software/LMI_InstalledSoftwareIdentity.py b/src/software/lmi/software/LMI_InstalledSoftwareIdentity.py index ef353fd..8463171 100644 --- a/src/software/lmi/software/LMI_InstalledSoftwareIdentity.py +++ b/src/software/lmi/software/LMI_InstalledSoftwareIdentity.py @@ -28,11 +28,11 @@ Instruments the CIM class LMI_InstalledSoftwareIdentity import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import generate_references from lmi.software.core import ComputerSystem from lmi.software.core import Identity -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB LOG = cmpi_logging.get_logger(__name__) diff --git a/src/software/lmi/software/LMI_MemberOfSoftwareCollection.py b/src/software/lmi/software/LMI_MemberOfSoftwareCollection.py index ab022ed..9d99d5f 100644 --- a/src/software/lmi/software/LMI_MemberOfSoftwareCollection.py +++ b/src/software/lmi/software/LMI_MemberOfSoftwareCollection.py @@ -25,11 +25,11 @@ Instruments the CIM class LMI_MemberOfSoftwareCollection import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import generate_references from lmi.software.core import Identity from lmi.software.core import SystemCollection -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB @cmpi_logging.trace_function diff --git a/src/software/lmi/software/LMI_OwningSoftwareJobElement.py b/src/software/lmi/software/LMI_OwningSoftwareJobElement.py index 8bae51b..23b51a2 100644 --- a/src/software/lmi/software/LMI_OwningSoftwareJobElement.py +++ b/src/software/lmi/software/LMI_OwningSoftwareJobElement.py @@ -25,9 +25,9 @@ Instruments the CIM class LMI_OwningSoftwareJobElement import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import InstallationService from lmi.software.core import Job -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB class LMI_OwningSoftwareJobElement(CIMProvider2): diff --git a/src/software/lmi/software/LMI_ResourceForSoftwareIdentity.py b/src/software/lmi/software/LMI_ResourceForSoftwareIdentity.py index 44f120c..6a9d7af 100644 --- a/src/software/lmi/software/LMI_ResourceForSoftwareIdentity.py +++ b/src/software/lmi/software/LMI_ResourceForSoftwareIdentity.py @@ -26,11 +26,11 @@ from pywbem.cim_provider2 import CIMProvider2 import logging import pywbem +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import generate_references from lmi.software.core import Identity from lmi.software.core import IdentityResource -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB @cmpi_logging.trace_function diff --git a/src/software/lmi/software/LMI_SoftwareIdentity.py b/src/software/lmi/software/LMI_SoftwareIdentity.py index 13e1bb5..54d63e2 100644 --- a/src/software/lmi/software/LMI_SoftwareIdentity.py +++ b/src/software/lmi/software/LMI_SoftwareIdentity.py @@ -26,8 +26,8 @@ Instruments the CIM class LMI_SoftwareIdentity import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import Identity -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB class LMI_SoftwareIdentity(CIMProvider2): diff --git a/src/software/lmi/software/LMI_SoftwareIdentityChecks.py b/src/software/lmi/software/LMI_SoftwareIdentityChecks.py index 3aecfa2..1327893 100644 --- a/src/software/lmi/software/LMI_SoftwareIdentityChecks.py +++ b/src/software/lmi/software/LMI_SoftwareIdentityChecks.py @@ -28,10 +28,10 @@ Instruments the CIM class LMI_SoftwareIdentityChecks import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import generate_references from lmi.software.core import Identity, IdentityFileCheck -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB def generate_identity_referents(_env, object_name, model, _keys_only): diff --git a/src/software/lmi/software/LMI_SoftwareIdentityFileCheck.py b/src/software/lmi/software/LMI_SoftwareIdentityFileCheck.py index 0cad75b..aa42e0d 100644 --- a/src/software/lmi/software/LMI_SoftwareIdentityFileCheck.py +++ b/src/software/lmi/software/LMI_SoftwareIdentityFileCheck.py @@ -28,9 +28,9 @@ Instruments the CIM class LMI_SoftwareIdentityFileCheck import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import ComputerSystem from lmi.software.core import IdentityFileCheck -from lmi.software.util import cmpi_logging class LMI_SoftwareIdentityFileCheck(CIMProvider2): """Instrument the CIM class LMI_SoftwareIdentityFileCheck diff --git a/src/software/lmi/software/LMI_SoftwareIdentityResource.py b/src/software/lmi/software/LMI_SoftwareIdentityResource.py index da28361..46a3346 100644 --- a/src/software/lmi/software/LMI_SoftwareIdentityResource.py +++ b/src/software/lmi/software/LMI_SoftwareIdentityResource.py @@ -28,8 +28,8 @@ Instruments the CIM class LMI_SoftwareIdentityResource import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import IdentityResource -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB, errors LOG = cmpi_logging.get_logger(__name__) diff --git a/src/software/lmi/software/LMI_SoftwareInstallationService.py b/src/software/lmi/software/LMI_SoftwareInstallationService.py index fa31df6..3e93ba4 100644 --- a/src/software/lmi/software/LMI_SoftwareInstallationService.py +++ b/src/software/lmi/software/LMI_SoftwareInstallationService.py @@ -25,11 +25,11 @@ Instruments the CIM class LMI_SoftwareInstallationService import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import Identity from lmi.software.core import IdentityResource from lmi.software.core import InstallationService from lmi.software.core import Job -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB LOG = cmpi_logging.get_logger(__name__) diff --git a/src/software/lmi/software/LMI_SoftwareInstallationServiceAffectsElement.py b/src/software/lmi/software/LMI_SoftwareInstallationServiceAffectsElement.py index f7ca1c7..107021d 100644 --- a/src/software/lmi/software/LMI_SoftwareInstallationServiceAffectsElement.py +++ b/src/software/lmi/software/LMI_SoftwareInstallationServiceAffectsElement.py @@ -25,12 +25,12 @@ Instruments the CIM class LMI_SoftwareInstallationServiceAffectsElement import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import ComputerSystem from lmi.software.core import Identity from lmi.software.core import InstallationService from lmi.software.core import InstallationServiceAffectsElement -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB LOG = cmpi_logging.get_logger(__name__) diff --git a/src/software/lmi/software/LMI_SoftwareInstallationServiceCapabilities.py b/src/software/lmi/software/LMI_SoftwareInstallationServiceCapabilities.py index e6dd012..fe6f699 100644 --- a/src/software/lmi/software/LMI_SoftwareInstallationServiceCapabilities.py +++ b/src/software/lmi/software/LMI_SoftwareInstallationServiceCapabilities.py @@ -25,8 +25,8 @@ Instruments the CIM class LMI_SoftwareInstallationServiceCapabilities import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import InstallationServiceCapabilities -from lmi.software.util import cmpi_logging class LMI_SoftwareInstallationServiceCapabilities(CIMProvider2): """Instrument the CIM class LMI_SoftwareInstallationServiceCapabilities diff --git a/src/software/lmi/software/LMI_SoftwareJob.py b/src/software/lmi/software/LMI_SoftwareJob.py index e5efbdd..9d6b36d 100644 --- a/src/software/lmi/software/LMI_SoftwareJob.py +++ b/src/software/lmi/software/LMI_SoftwareJob.py @@ -27,8 +27,8 @@ Instruments the CIM class LMI_SoftwareJob import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import Job -from lmi.software.util import cmpi_logging from lmi.software.yumdb import errors, YumDB LOG = cmpi_logging.get_logger(__name__) diff --git a/src/software/lmi/software/LMI_SoftwareMethodResult.py b/src/software/lmi/software/LMI_SoftwareMethodResult.py index 41143e1..0117582 100644 --- a/src/software/lmi/software/LMI_SoftwareMethodResult.py +++ b/src/software/lmi/software/LMI_SoftwareMethodResult.py @@ -26,8 +26,8 @@ Instruments the CIM class LMI_SoftwareMethodResult import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import MethodResult -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB class LMI_SoftwareMethodResult(CIMProvider2): diff --git a/src/software/lmi/software/LMI_SystemSoftwareCollection.py b/src/software/lmi/software/LMI_SystemSoftwareCollection.py index 2f7178c..b2721a1 100644 --- a/src/software/lmi/software/LMI_SystemSoftwareCollection.py +++ b/src/software/lmi/software/LMI_SystemSoftwareCollection.py @@ -24,8 +24,8 @@ Instruments the CIM class LMI_SystemSoftwareCollection import pywbem from pywbem.cim_provider2 import CIMProvider2 +from lmi.providers import cmpi_logging from lmi.software.core import SystemCollection -from lmi.software.util import cmpi_logging class LMI_SystemSoftwareCollection(CIMProvider2): """Instrument the CIM class LMI_SystemSoftwareCollection diff --git a/src/software/lmi/software/cimom_entry.py b/src/software/lmi/software/cimom_entry.py index 27c9820..33ac7bf 100644 --- a/src/software/lmi/software/cimom_entry.py +++ b/src/software/lmi/software/cimom_entry.py @@ -26,6 +26,7 @@ Entry module for OpenLMI Software providers. from multiprocessing import Queue +from lmi.providers import cmpi_logging from lmi.providers import JobManager from lmi.providers.IndicationManager import IndicationManager from lmi.software import util @@ -68,7 +69,6 @@ from lmi.software.LMI_SoftwareIdentityFileCheck import \ from lmi.software.LMI_SoftwareIdentityChecks import LMI_SoftwareIdentityChecks from lmi.software.yumdb import jobmanager from lmi.software.yumdb import YumDB -from lmi.software.util import cmpi_logging def get_providers(env): """ diff --git a/src/software/lmi/software/core/AffectedSoftwareJobElement.py b/src/software/lmi/software/core/AffectedSoftwareJobElement.py index 0589a19..bd1bcb3 100644 --- a/src/software/lmi/software/core/AffectedSoftwareJobElement.py +++ b/src/software/lmi/software/core/AffectedSoftwareJobElement.py @@ -23,13 +23,13 @@ Just a common functionality related to AffectedSoftwareJobElement provider. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import ComputerSystem from lmi.software.core import Identity from lmi.software.core import IdentityFileCheck from lmi.software.core import Job from lmi.software.core import SystemCollection -from lmi.software.util import cmpi_logging from lmi.software.yumdb import jobs from lmi.software.yumdb import PackageInfo diff --git a/src/software/lmi/software/core/ComputerSystem.py b/src/software/lmi/software/core/ComputerSystem.py index 1da038c..1a20058 100644 --- a/src/software/lmi/software/core/ComputerSystem.py +++ b/src/software/lmi/software/core/ComputerSystem.py @@ -23,8 +23,8 @@ Just a common functionality related to associated class CIM_ComputerSystem. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util -from lmi.software.util import cmpi_logging def get_path(prefix=None): """ diff --git a/src/software/lmi/software/core/Error.py b/src/software/lmi/software/core/Error.py index d283801..b199fdd 100644 --- a/src/software/lmi/software/core/Error.py +++ b/src/software/lmi/software/core/Error.py @@ -23,8 +23,8 @@ Just a common functionality related to class CIM_Error. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util -from lmi.software.util import cmpi_logging class Values(object): class ErrorSourceFormat(object): diff --git a/src/software/lmi/software/core/Identity.py b/src/software/lmi/software/core/Identity.py index b14ef9d..5ae7a4f 100644 --- a/src/software/lmi/software/core/Identity.py +++ b/src/software/lmi/software/core/Identity.py @@ -23,8 +23,8 @@ Just a common functionality related to LMI_SoftwareIdentity provider. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util -from lmi.software.util import cmpi_logging from lmi.software.yumdb import PackageInfo, YumDB LOG = cmpi_logging.get_logger(__name__) diff --git a/src/software/lmi/software/core/IdentityFileCheck.py b/src/software/lmi/software/core/IdentityFileCheck.py index c525481..d68f3a2 100644 --- a/src/software/lmi/software/core/IdentityFileCheck.py +++ b/src/software/lmi/software/core/IdentityFileCheck.py @@ -30,8 +30,8 @@ import pywbem import stat import yum +from lmi.providers import cmpi_logging from lmi.software import util -from lmi.software.util import cmpi_logging from lmi.software.yumdb import errors from lmi.software.yumdb import jobs from lmi.software.yumdb import packagecheck diff --git a/src/software/lmi/software/core/IdentityResource.py b/src/software/lmi/software/core/IdentityResource.py index dd93b4e..884e09b 100644 --- a/src/software/lmi/software/core/IdentityResource.py +++ b/src/software/lmi/software/core/IdentityResource.py @@ -23,8 +23,8 @@ Just a common functionality related to LMI_SoftwareIdentityResource provider. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util -from lmi.software.util import cmpi_logging from lmi.software.yumdb import YumDB from lmi.software.yumdb.repository import Repository diff --git a/src/software/lmi/software/core/InstMethodCall.py b/src/software/lmi/software/core/InstMethodCall.py index 358d342..0543180 100644 --- a/src/software/lmi/software/core/InstMethodCall.py +++ b/src/software/lmi/software/core/InstMethodCall.py @@ -23,9 +23,9 @@ CIM values for enumeration types of CIM_InstMethodCall indication class. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import Job -from lmi.software.util import cmpi_logging from lmi.software.yumdb import jobs class Values(object): diff --git a/src/software/lmi/software/core/InstallationService.py b/src/software/lmi/software/core/InstallationService.py index 70df285..e7e43c8 100644 --- a/src/software/lmi/software/core/InstallationService.py +++ b/src/software/lmi/software/core/InstallationService.py @@ -24,12 +24,12 @@ provider. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import ComputerSystem from lmi.software.core import Identity from lmi.software.core import Job from lmi.software.core import SystemCollection -from lmi.software.util import cmpi_logging from lmi.software.yumdb import errors from lmi.software.yumdb import YumDB diff --git a/src/software/lmi/software/core/InstallationServiceAffectsElement.py b/src/software/lmi/software/core/InstallationServiceAffectsElement.py index a75aafb..fc1d317 100644 --- a/src/software/lmi/software/core/InstallationServiceAffectsElement.py +++ b/src/software/lmi/software/core/InstallationServiceAffectsElement.py @@ -24,9 +24,9 @@ LMI_SoftwareInstallationServiceAffectsElement. import pywbem +from lmi.providers import cmpi_logging from lmi.software.core import ComputerSystem from lmi.software.core import Identity -from lmi.software.util import cmpi_logging class Values(object): class ElementEffects(object): diff --git a/src/software/lmi/software/core/InstallationServiceCapabilities.py b/src/software/lmi/software/core/InstallationServiceCapabilities.py index fbfc3ad..af3d3d1 100644 --- a/src/software/lmi/software/core/InstallationServiceCapabilities.py +++ b/src/software/lmi/software/core/InstallationServiceCapabilities.py @@ -24,8 +24,8 @@ LMI_SoftwareInstallationServiceCapabilities provider. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util -from lmi.software.util import cmpi_logging class Values(object): class SupportedExtendedResourceTypes(object): diff --git a/src/software/lmi/software/core/Job.py b/src/software/lmi/software/core/Job.py index 0bf6faa..7c75778 100644 --- a/src/software/lmi/software/core/Job.py +++ b/src/software/lmi/software/core/Job.py @@ -26,9 +26,9 @@ from datetime import datetime, timedelta import pywbem import time +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import Error -from lmi.software.util import cmpi_logging from lmi.software.yumdb import errors from lmi.software.yumdb import jobs from lmi.software.yumdb import YumDB diff --git a/src/software/lmi/software/core/MethodResult.py b/src/software/lmi/software/core/MethodResult.py index c388131..9766a71 100644 --- a/src/software/lmi/software/core/MethodResult.py +++ b/src/software/lmi/software/core/MethodResult.py @@ -23,10 +23,10 @@ Just a common functionality related to class LMI_SoftwareMethodResult. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.core import InstMethodCall from lmi.software.core import Job -from lmi.software.util import cmpi_logging from lmi.software.yumdb import jobs, errors, YumDB @cmpi_logging.trace_function diff --git a/src/software/lmi/software/core/SystemCollection.py b/src/software/lmi/software/core/SystemCollection.py index 3095a13..401ed3d 100644 --- a/src/software/lmi/software/core/SystemCollection.py +++ b/src/software/lmi/software/core/SystemCollection.py @@ -22,8 +22,8 @@ Common utilities concerning SystemSoftwareCollection provider. import pywbem +from lmi.providers import cmpi_logging from lmi.software import util -from lmi.software.util import cmpi_logging def get_path(): """@return instance name with prefilled properties""" diff --git a/src/software/lmi/software/core/__init__.py b/src/software/lmi/software/core/__init__.py index 7e2dd85..33c5fcd 100644 --- a/src/software/lmi/software/core/__init__.py +++ b/src/software/lmi/software/core/__init__.py @@ -27,7 +27,7 @@ in this subpackage with the same name except for LMI_ prefix. import pywbem -from lmi.software.util import cmpi_logging +from lmi.providers import cmpi_logging @cmpi_logging.trace_function def generate_references( diff --git a/src/software/lmi/software/util/cmpi_logging.py b/src/software/lmi/software/util/cmpi_logging.py deleted file mode 100644 index ca256b9..0000000 --- a/src/software/lmi/software/util/cmpi_logging.py +++ /dev/null @@ -1,282 +0,0 @@ -# Software Management Providers -# -# Copyright (C) 2012-2013 Red Hat, Inc. All rights reserved. -# -# This library is free software; you can redistribute it and/or -# modify it under the terms of the GNU Lesser General Public -# License as published by the Free Software Foundation; either -# version 2.1 of the License, or (at your option) any later version. -# -# This library is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Lesser General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public -# License along with this library; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -# -# Authors: Michal Minar <miminar@redhat.com> -# -""" -Module devoted to logging facilities. -""" - -import inspect -from itertools import chain -import logging -import logging.config -import os - -from lmi.providers import cmpi_logging - -DEFAULT_LOGGING_CONFIG = { - "version" : 1, - 'disable_existing_loggers' : True, - "formatters": { - # this is a message format for logging function/method calls - # it's manually set up in YumWorker's init method - "default": { - "()": "lmi.software.util.cmpi_logging.DispatchingFormatter", - "formatters" : { - "lmi.software.util.cmpi_logging.trace_function_or_method": - "%(levelname)s:%(message)s" - }, - "default" : "%(levelname)s:%(module)s:" - "%(funcName)s:%(lineno)d - %(message)s" - }, - }, - "handlers": { - "stderr" : { - "class" : "logging.StreamHandler", - "level" : "ERROR", - "formatter": "default", - }, - "cmpi" : { - "()" : "lmi.providers.cmpi_logging.CMPILogHandler", - # this must be filled with broker env logger - "cmpi_logger" : None, - "level" : "ERROR", - "formatter" : "default" - }, - }, - "root": { - "level": "ERROR", - "handlers" : ["cmpi"], - }, - } - -LOGGING_LEVELS = { - "critical" : logging.CRITICAL, - "error" : logging.ERROR, - "warning" : logging.WARNING, - "warn" : logging.WARNING, - "info" : logging.INFO, - "trace_warning" : cmpi_logging.TRACE_WARNING, - "trace_info" : cmpi_logging.TRACE_INFO, - "trace_verbose" : cmpi_logging.TRACE_VERBOSE, - "debug" : logging.DEBUG -} - -class DispatchingFormatter: - """ - Formatter class for logging module. It allows to predefine different - format string for paricular module names. - - There is no way, how to setup this formatter in configuration file. - """ - def __init__(self, formatters, default): - """ - *format* in parameters description can be either ``string`` or - another formatter object. - - :param formatters (``dict``) Mapping of module names to *format*. - :param default Default *format*. - """ - for k, formatter in formatters.items(): - if isinstance(formatter, basestring): - formatters[k] = logging.Formatter(formatter) - self._formatters = formatters - if isinstance(default, basestring): - default = logging.Formatter(default) - self._default_formatter = default - - def format(self, record): - """ - Interface for logging module. - """ - formatter = self._formatters.get(record.name, self._default_formatter) - return formatter.format(record) - -# ***************************************************************************** -# Decorators -# ***************************************************************************** -def trace_function_or_method(is_method=False, frame_level=1): - """ - Factory for function and method decorators. Generated decorators - log every calls and exits of decorated functions or methods. - - Logged information contain the caller's module and line together with - called function's module, function name and line number. - - :param is_method: (``bool``) Whether returned decorator is targeted - for use upon a method of a class. It modified logged function by - prepending owning class name. - :param frame_level: (``int``) Number of nested frames to skip when - searching for called function scope by inspecting stack upwards. - When the result of this function is applied directly on the definition - of function, it's value should be 1. When used from inside of some - other factory, it must be increased by 1. - """ - - assert frame_level >= 1 - - def _decorator(func): - """ - Decorator for logging entries and exits of function or method. - """ - if not inspect.ismethod(func) and not inspect.isfunction(func): - raise TypeError("func must be a function") - - def _print_value(val): - """ - Used here for printing function arguments. Shortens the output - string, if that would be too long. - """ - if isinstance(val, list): - if len(val) < 2: - return str(val) - else: - return "[%s, ...]" % _print_value(val[0]) - return str(val) - - module = func.__module__.split('.')[-1] - frm = inspect.currentframe() - for i in range(frame_level): - frm = frm.f_back - lineno = frm.f_lineno - del frm - classname = inspect.getouterframes( - inspect.currentframe())[frame_level][3] - - def _wrapper(*args, **kwargs): - """ - Wrapper for function or method, that does the logging. - """ - logger = logging.getLogger(__name__+'.trace_function_or_method') - if logger.isEnabledFor(logging.DEBUG): - frm = inspect.currentframe() - logargs = { - "caller_file" : os.path.basename(os.path.splitext( - frm.f_back.f_code.co_filename)[0]), - "caller_lineno" : frm.f_back.f_lineno, - "module" : module, - "func" : classname + "." + func.__name__ - if is_method else func.__name__, - "lineno" : lineno, - "action" : "entering", - "args" : ", ".join(chain( - (_print_value(a) for a in args), - ( "%s=%s"%(k, _print_value(v)) - for k, v in kwargs.items()))) - } - - if not logargs["args"]: - logargs["args"] = "" - else: - logargs["args"] = " with args=(%s)" % logargs["args"] - logger.debug("%(caller_file)s:%(caller_lineno)d - %(action)s" - " %(module)s:%(func)s:%(lineno)d%(args)s" , logargs) - try: - result = func(*args, **kwargs) - if logger.isEnabledFor(logging.DEBUG): - logargs["action"] = "exiting" - logger.debug("%(caller_file)s:%(caller_lineno)d" - " - %(action)s %(module)s:%(func)s:%(lineno)d", - logargs) - except Exception as exc: - if logger.isEnabledFor(logging.DEBUG): - logargs['action'] = 'exiting' - logargs['error'] = str(exc) - logger.debug("%(caller_file)s:%(caller_lineno)d" - " - %(action)s %(module)s:%(func)s:%(lineno)d" - " with error: %(error)s", logargs) - raise - return result - - return _wrapper - - return _decorator - -def trace_function(func, frame_level=1): - """ Convenience function used for decorating simple functions. """ - return trace_function_or_method(frame_level=frame_level + 1)(func) - -def trace_method(func, frame_level=1): - """ Convenience function used for decorating methods. """ - return trace_function_or_method(True, frame_level + 1)(func) - -def setup(env, config): - """ - Set up the logging with options given by SoftwareConfiguration instance. - This should be called at process's startup before any message is sent to - log. - - :param env: (``ProviderEnvironment``) Provider environment, taken - from CIMOM callback (e.g. ``get_providers()``). - :param config: (``BaseConfiguration``) Configuration with Log section - containing settings for logging. - """ - cp = config.config - logging_setup = False - try: - path = config.file_path('Log', 'FileConfig') - if not os.path.exists(path): - logging.getLogger(__name__).error('given FileConfig "%s" does' - ' not exist', path) - else: - logging.config.fileConfig(path) - logging_setup = True - except Exception: - if cp.has_option('Log', 'FileConfig'): - logging.getLogger(__name__).exception( - 'failed to setup logging from FileConfig') - if logging_setup is False: - defaults = DEFAULT_LOGGING_CONFIG.copy() - defaults["handlers"]["cmpi"]["cmpi_logger"] = env.get_logger() - if config.stderr: - defaults["root"]["handlers"] = ["stderr"] - level = config.logging_level - if not level in LOGGING_LEVELS: - logging.getLogger(__name__).error( - 'level name "%s" not supported', level) - else: - level = LOGGING_LEVELS[level] - for handler in defaults["handlers"].values(): - handler["level"] = level - defaults["root"]["level"] = level - logging.config.dictConfig(defaults) - # needed for shared code under lmi.common - cmpi_logging.logger = logging.getLogger('lmi.providers') - -def get_logger(module_name): - """ - Convenience function for getting callable returning logger for particular - module name. It's supposed to be used at module's level to assign its - result to global variable like this: - - LOG = cmpi_logging.get_logger(__name__) - - This can be used in module's functions and classes like this: - - def module_function(param): - LOG().debug("this is debug statement logging param: %s", param) - - Thanks to ``LOG`` being a callable, it always returns valid logger object - with current configuration, which may change overtime. - """ - def _logger(): - """ Callable used to obtain current logger object. """ - return logging.getLogger(module_name) - return _logger - diff --git a/src/software/lmi/software/yumdb/__init__.py b/src/software/lmi/software/yumdb/__init__.py index 5ccdc1b..afd3c1c 100644 --- a/src/software/lmi/software/yumdb/__init__.py +++ b/src/software/lmi/software/yumdb/__init__.py @@ -44,9 +44,9 @@ import threading import yum from lmi.base import singletonmixin +from lmi.providers import cmpi_logging from lmi.providers.IndicationManager import IndicationManager from lmi.software.util import Configuration -from lmi.software.util import cmpi_logging from lmi.software.util import get_signal_name from lmi.software.yumdb import jobs from lmi.software.yumdb.packagecheck import PackageCheck diff --git a/src/software/lmi/software/yumdb/jobmanager.py b/src/software/lmi/software/yumdb/jobmanager.py index 6a360ef..6b0b854 100644 --- a/src/software/lmi/software/yumdb/jobmanager.py +++ b/src/software/lmi/software/yumdb/jobmanager.py @@ -39,11 +39,11 @@ import threading import time import traceback +from lmi.providers import cmpi_logging from lmi.providers.IndicationManager import IndicationManager from lmi.providers.JobManager import JobManager as JM from lmi.software.yumdb import errors from lmi.software.yumdb import jobs -from lmi.software.util import cmpi_logging from lmi.software.util import Configuration # This is a callable, which must be initialized before JobManager is used. diff --git a/src/software/lmi/software/yumdb/process.py b/src/software/lmi/software/yumdb/process.py index 1745e49..7a67ebc 100644 --- a/src/software/lmi/software/yumdb/process.py +++ b/src/software/lmi/software/yumdb/process.py @@ -37,6 +37,7 @@ from urlgrabber.grabber import default_grabber import weakref import yum +from lmi.providers import cmpi_logging from lmi.software import util from lmi.software.yumdb import errors from lmi.software.yumdb import jobs @@ -44,7 +45,6 @@ from lmi.software.yumdb import packageinfo from lmi.software.yumdb import packagecheck from lmi.software.yumdb import repository from lmi.software.yumdb.jobmanager import JobManager -from lmi.software.util import cmpi_logging from lmi.software.yumdb.util import setup_logging # Global variable which gets its value after the start of YumWorker process. diff --git a/src/software/lmi/software/yumdb/util.py b/src/software/lmi/software/yumdb/util.py index 6f4622c..72ca6bc 100644 --- a/src/software/lmi/software/yumdb/util.py +++ b/src/software/lmi/software/yumdb/util.py @@ -24,7 +24,7 @@ Common utilities meant to be used only be ``yumdb`` subpackage. """ import logging -from lmi.software.util import cmpi_logging +from lmi.providers import cmpi_logging from lmi.software.util import Configuration DEBUG_LOGGING_CONFIG = { @@ -34,9 +34,9 @@ DEBUG_LOGGING_CONFIG = { # this is a message format for logging function/method calls # it's manually set up in YumWorker's init method "default": { - "()": "lmi.software.util.cmpi_logging.DispatchingFormatter", + "()": "lmi.providers.cmpi_logging.DispatchingFormatter", "formatters" : { - "lmi.software.util.cmpi_logging.trace_function_or_method": + "lmi.providers.cmpi_logging.trace_function_or_method": "%(asctime)s %(levelname)s:%(message)s" }, "default" : "%(asctime)s %(levelname)s:%(module)s:" |