Unsupported content This version of the documentation is no longer supported. However, the documentation is available for your convenience. You will not be able to leave comments.

Working with category debug logging


You can enable debug logging for specific categories at run time. Category debug logging makes problem diagnosis easier by enabling you to target logging to specific BMC Cloud Lifecycle Management functionality and to specify the level of detail that is reported in the logs.

The following BMC Communities video describes how to enable category debug logging.

icon-play.png https://youtu.be/Om7b3LxMl6A

To enable category debug logs

  1. Log on to the server that hosts Platform Manager.
  2. Open cloudservices.json in a text editor.

    The file is located in the following directory:
    • Windows: C:\Program Files\BMC Software\BMCCloudLifeCycleManagement\Platform_Manager\configuration
    • Linux: /opt/bmc/BMCCloudLifeCycleManagement/Platform_Manager/configuration
  3. Search for the following text string:
    Logging Service

    This search positions you at the section in the file that contains access attributes for the Logging Service.
  4. If the categoryDebugLevels access attribute value object is not present in the Logging Service section of the file, copy the following JSON and paste it into the file within the accessValues object of the Logging Service CloudServiceobject; otherwise, skip to the next step.

    {
     "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
     "accessAttribute": {
       "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
       "datatype": "String",
       "description": "Debug Level per Category",
       "guid": "BB14C628-E602-4BAA-9BAE-AD616280B516",
       "isOptional": true,
       "isPassword": false,
       "length": 255,
       "modifiableWithoutRestart": true,
       "name": "categoryDebugLevels"
      },
     "attributeValue": "EFM=debug,TASK=debug",
     "description": "Debug Level per Category",
     "guid": "48591A8B-E887-4F1E-B8DA-AE231D2B7727",
     "name": "categoryDebugLevels"
    }

    To view sample excerpts from the cloudservices.jsonfile that will help you position the JSON correctly, click the following disclosure triangles:

    Sample Logging Services section of cloudservices.json file without the categoryDebugLevels attribute
    {
       "cloudClass": "com.bmc.cloud.model.beans.CloudService",
       "accessValues": [
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "Integer",
                   "description": "Maximum file size in Megabytes",
                   "guid": "6d38a2b9-640a-40f6-9493-8d6faa277ad4",
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "maxFileSizeInMegs"
                },
               "attributeValue": "10",
               "description": "Maximum file size in Megabytes",
               "guid": "1ad8b54b-4293-4a70-9253-d321ceb11561",
               "name": "maxFileSizeInMegs"
            },
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "Integer",
                   "description": "Maximum number of backup log files on roll-over",
                   "guid": "c7f2deb0-e0db-425b-aefb-2ec1159311aa",
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "maxBackupIndex"
                },
               "attributeValue": "5",
               "description": "Maximum number of backup log files on roll-over",
               "guid": "e715e256-47ff-422c-b849-91e8c78509d1",
               "name": "maxBackupIndex"
            },
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Log file name",
                   "guid": "20873305-fb26-4788-af7b-6557780e59f9",
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "filename"
                },
               "attributeValue": "csm.log",
               "description": "Log file name",
               "guid": "43db37fa-5525-4094-a633-3dc07185ec2d",
               "name": "filename"
            },
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Debug Level",
                   "guid": "413b5d15-a240-4c49-9be3-5d104e3a754a",
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "debugLevel"
                },
               "attributeValue": "info",
               "description": "Debug Level",
               "guid": "74c30e60-8519-4256-9990-55c8a2f07696",
               "name": "debugLevel"
            }
        ],
       "cloudServiceDefinition": "/cloudservicedefinition/07ef2577-d817-4996-b9a7-fab6b71f27df",
       "cloudServiceDefinitionObject": {
           "cloudClass": "com.bmc.cloud.model.beans.CloudServiceDefinition",
           "accessAttributes": [
                {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "Integer",
                   "description": "Maximum file size in Megabytes",
                   "guid": "6d38a2b9-640a-40f6-9493-8d6faa277ad4",
                   "hasValueObject": [
                        {
                           "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
                           "attributeValue": "10",
                           "guid": "f0c4c88b-eccd-45fb-9581-88ef584b63f4",
                           "name": "maxFileSizeInMegs"
                        }
                    ],
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "maxFileSizeInMegs"
                },
                {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "Integer",
                   "description": "Maximum number of backup log files on roll-over",
                   "guid": "c7f2deb0-e0db-425b-aefb-2ec1159311aa",
                   "hasValueObject": [
                        {
                           "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
                           "attributeValue": "5",
                           "guid": "48affb9f-2320-43f7-8d28-9a3ebba9f4a3",
                           "name": "maxBackupIndex"
                        }
                    ],
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "maxBackupIndex"
                },
                {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Log file name",
                   "guid": "20873305-fb26-4788-af7b-6557780e59f9",
                   "hasValueObject": [
                        {
                           "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
                           "attributeValue": "csm.log",
                           "guid": "ea3ce21a-02c4-4498-b32e-b7ef499dcde1",
                           "name": "filename"
                        }
                    ],
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "filename"
                },
                {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Debug Level",
                   "guid": "413b5d15-a240-4c49-9be3-5d104e3a754a",
                   "hasValueObject": [
                        {
                           "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
                           "attributeValue": "info",
                           "guid": "10e1975e-4d89-4ebb-8565-7d490832d42f",
                           "name": "debugLevel"
                        }
                    ],
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "debugLevel"
                }
            ],
           "description": "Logging Service",
           "guid": "07ef2577-d817-4996-b9a7-fab6b71f27df",
           "name": "logging",
           "tags": [ ]
        },
       "description": "Logging Service",
       "guid": "f3792ac7-3f17-41b2-949d-d5275d03a4f3",
       "isDisabled": false,
       "name": "logging"
    }
    Sample Logging Services section of cloudservices.json file with the categoryDebugLevels attribute

    The categoryDebugLevels attribute begins near line 76 in the following JSON (the actual line number varies depending on how the code wraps):

    {
       "cloudClass": "com.bmc.cloud.model.beans.CloudService",
       "accessValues": [
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "Integer",
                   "description": "Maximum file size in Megabytes",
                   "guid": "6d38a2b9-640a-40f6-9493-8d6faa277ad4",
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "maxFileSizeInMegs"
                },
               "attributeValue": "10",
               "description": "Maximum file size in Megabytes",
               "guid": "1ad8b54b-4293-4a70-9253-d321ceb11561",
               "name": "maxFileSizeInMegs"
            },
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "Integer",
                   "description": "Maximum number of backup log files on roll-over",
                   "guid": "c7f2deb0-e0db-425b-aefb-2ec1159311aa",
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "maxBackupIndex"
                },
               "attributeValue": "5",
               "description": "Maximum number of backup log files on roll-over",
               "guid": "e715e256-47ff-422c-b849-91e8c78509d1",
               "name": "maxBackupIndex"
            },
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Log file name",
                   "guid": "20873305-fb26-4788-af7b-6557780e59f9",
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "filename"
                },
               "attributeValue": "csm.log",
               "description": "Log file name",
               "guid": "43db37fa-5525-4094-a633-3dc07185ec2d",
               "name": "filename"
            },
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Debug Level",
                   "guid": "413b5d15-a240-4c49-9be3-5d104e3a754a",
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "debugLevel"
                },
               "attributeValue": "info",
               "description": "Debug Level",
               "guid": "74c30e60-8519-4256-9990-55c8a2f07696",
               "name": "debugLevel"
            },
            {
               "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
               "accessAttribute": {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Debug Level per Category",
                   "guid": "BB14C628-E602-4BAA-9BAE-AD616280B516",
                   "isOptional": true,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": true,
                   "name": "categoryDebugLevels"
                },
               "attributeValue": "EFM=debug,TASK=debug",
               "description": "Debug Level per Category",
               "guid": "48591A8B-E887-4F1E-B8DA-AE231D2B7727",
               "name": "categoryDebugLevels"
            }
        ],
       "cloudServiceDefinition": "/cloudservicedefinition/07ef2577-d817-4996-b9a7-fab6b71f27df",
       "cloudServiceDefinitionObject": {
           "cloudClass": "com.bmc.cloud.model.beans.CloudServiceDefinition",
           "accessAttributes": [
                {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "Integer",
                   "description": "Maximum file size in Megabytes",
                   "guid": "6d38a2b9-640a-40f6-9493-8d6faa277ad4",
                   "hasValueObject": [
                        {
                           "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
                           "attributeValue": "10",
                           "guid": "f0c4c88b-eccd-45fb-9581-88ef584b63f4",
                           "name": "maxFileSizeInMegs"
                        }
                    ],
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "maxFileSizeInMegs"
                },
                {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "Integer",
                   "description": "Maximum number of backup log files on roll-over",
                   "guid": "c7f2deb0-e0db-425b-aefb-2ec1159311aa",
                   "hasValueObject": [
                        {
                           "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
                           "attributeValue": "5",
                           "guid": "48affb9f-2320-43f7-8d28-9a3ebba9f4a3",
                           "name": "maxBackupIndex"
                        }
                    ],
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "maxBackupIndex"
                },
                {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Log file name",
                   "guid": "20873305-fb26-4788-af7b-6557780e59f9",
                   "hasValueObject": [
                        {
                           "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
                           "attributeValue": "csm.log",
                           "guid": "ea3ce21a-02c4-4498-b32e-b7ef499dcde1",
                           "name": "filename"
                        }
                    ],
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "filename"
                },
                {
                   "cloudClass": "com.bmc.cloud.model.beans.AccessAttribute",
                   "datatype": "String",
                   "description": "Debug Level",
                   "guid": "413b5d15-a240-4c49-9be3-5d104e3a754a",
                   "hasValueObject": [
                        {
                           "cloudClass": "com.bmc.cloud.model.beans.AccessAttributeValue",
                           "attributeValue": "info",
                           "guid": "10e1975e-4d89-4ebb-8565-7d490832d42f",
                           "name": "debugLevel"
                        }
                    ],
                   "isOptional": false,
                   "isPassword": false,
                   "length": 255,
                   "modifiableWithoutRestart": false,
                   "name": "debugLevel"
                }
            ],
           "description": "Logging Service",
           "guid": "07ef2577-d817-4996-b9a7-fab6b71f27df",
           "name": "logging",
           "tags": [ ]
        },
       "description": "Logging Service",
       "guid": "f3792ac7-3f17-41b2-949d-d5275d03a4f3",
       "isDisabled": false,
       "name": "logging"
    }
  5. Within the categoryDebugLevels access attribute value object, modify attributeValue to specify the categories that you want to log.

    The value for attributeValue is a string of comma-separated key-value pairs in the format CATEGORY=level. In each key-value pair, CATEGORY represents the name for a part of the software and level represents the log level to apply to the category. See Log levelsand Categoriesfor the values that you can use. See Examplesfor some sample attributeValue settings.

    You can specify different categories at different log levels. For example, to select info-level logging for the EFM category, debug-level logging for the TASK category, and error-level logging for the WLM category, enter the following value for attributeValue:

    "attributeValue" : "EFM=info,TASK=debug,WLM=error",
  6. Save the cloudservices.json file.

    The new setting is effective in 5 seconds. You do not need to restart Platform Manager.

Log levels

The following table describes the log levels that you can specify:

Log level

Description

debug

Logs detailed information that provides insight into the sequence of events

error

Logs severe errors, runtime errors, and unexpected conditions

info

Logs interesting runtime events, such as starting or stopping services and creating or deleting important objects

warning

Logs undesirable runtime conditions, such as poor use of APIs and use of deprecated APIs

Categories

The following table describes the categories for which you can enable logging. If a particular functionality that you want to log does not appear in the list, use the default category, GENERAL.

Category

Cloud Lifecycle Management functionality

GENERAL (default)

ARMapManager, Policy, Cache, HostnameProvider, Util

DB

CloudDB

REGISTRY

Local and global registries

API

CloudManagerService, BMC BladeLogic Server Automation, BMC and BladeLogic Network Automation

TASK

TaskManager

CLOUD_MANAGER

Accepting API requests, and forwarding them for further processing

RESOURCE_MANAGER

Onboarding, creating, and decommissioning infrastructure resources like clusters, virtual machines, and servers

EFM

Orchestration of operations (such as creating servers and adding network paths) for a server group

WLM

Orchestration of operations that manage the lifecycle of a service

PROVIDER_REGISTRY

Provider Registry

PROVIDER

Base Provider and provider initialization part in all providers

OBJECT_MODEL

Object model

LOGIN_SERVICE

Login

SESSION_MANAGER

Session manager

CACHE

Cache

GENERIC_PROVIDER

Invocations related to callouts (HTTP and BMC Atrium Orchestrator)

CALLOUT

Callhandler, callouts

ARMAPMANAGER

ARMap Manager

VCLOUD

Integration with VMware vCloud Director

API_VALIDATOR

Provider Registry for API

MIGRATION

Migration framework and migration tasks

UTIL

Utility methods across Platform Manager

SCHEDULER

Scheduling of tasks within Platform Manager

APPUTIL

Interface to the Scratchpad service in Platform Manager

AWS_NOTIFICATIONS

Notifications for Amazon Web Services monitoring

AWS_CONNECT

Provisioning and data collection for Amazon Web Services

BLUEPRINT

Service blueprints

SVCOPS

Service monitoring (more detail needed)

OPS_MANAGER

Data collection for service monitoring thresholds, rules processing, and catalog management

OPS_SENSOR_MANAGER

Data collection for service monitoring and quota monitoring

OPS_VMWARE_PROVIDER

Data collection for monitoring of VMware services

OPS_AWS_PROVIDER

Data collection for monitoring of Amazon Web Services

PAAS_BDA_API

Platform as a Service Data Automation API

VMWARE_CONNECT

Provisioning and data collection for VMware services

ACTION_PROVIDER

Service monitoring policies and rules

CLOUD_ACTION_PROVIDER

Provides Platform Manager API/Operations as actions for auto-scaling

AWS_PROVIDER

Provisioning of Amazon Web Services instances

NOTIFICATION_PROVIDER

Notifications for general service monitoring

CUSTOM_ACTION_PROVIDER

Custom policies for service monitoring

OPINVOCATION_PROVIDER

Service monitoring policies and rules

OPS_COMPOSITE_PROVIDER

Aggregated data collection for resource sets

OPS_DATA_ANALYSIS_PROVIDER

Service monitoring thresholds

MESSAGE_SERVICE

BMC Cloud Lifecycle Management internal communication between data analysis provider and the rules provider

POLICY_ENGINE_DAO

Mapping Server Governor Policy Domain objects to Policy Cloud Objects, and vice versa

AUTOPILOT_PROVIDER

Autoscaling actions based on service monitoring thresholds

RULESMANAGER_PROVIDER

Creation and management of service monitoring policies

OPS_QUOTA_PROVIDER

Monitoring of quotas

POLICY_EVALUATOR

Manages Service Governor Policy evaluation in the Platform Manager

AUDIT_TRAIL

Detailed information about actions executed as part of service monitoring

OPS_COMPOSITE_EXPRESSIONEVALUATOR

Aggregated data collection for resource sets

BDA_CLIENT_API

Data Automation client API

ITSM_SERVICE

Provides services for interacting with BMC Remedy IT Service Management

EAR_PROVIDER

Manages objects (such as service requests, service offerings, and so on) on the Enterprise AR.

BSA_CACHE

BMC BladeLogic Server Automation cache

TASK_SP

Task status aggregation and propagation within the Task Manager subsystem

OPENSTACK

OpenStack Provider

TERREMARK

Terremark Provider

AZURE

Azure Provider

UTILS

Utility methods useful across the platform manager

Examples

The following table contains examples of strings that you can use for attributeValue in the categoryDebugLevels access attribute value object:

 

To disable category debug logs

  1. Log on to the server that hosts Platform Manager.
  2. Open cloudservices.json in a text editor.

    The file is located in the following directory:
    • Windows: C:\Program Files\BMC Software\BMCCloudLifeCycleManagement\Platform_Manager\configuration
    • Linux: /opt/bmc/BMCCloudLifeCycleManagement/Platform_Manager/configuration
  3. Find the categoryDebugLevels access attribute value object.
  4. Remove the debug level options from the attributeValueobject by setting the value as follows:

    "attributeValue": "",
  5. Save the cloudservices.json file.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*