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.
To enable category debug logs
- Log on to the server that hosts Platform Manager.
- 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
- 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. 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.json file that will help you position the JSON correctly, click the following disclosure triangles:
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",- 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 |
warn | 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 |
ACTION_PROVIDER | Service monitoring policies and rules |
API | CloudManagerService, BMC BladeLogic Server Automation, BMC and BladeLogic Network Automation |
API_VALIDATOR | Provider Registry for API |
APPUTIL | Interface to the Scratchpad service in Platform Manager |
ARMAPMANAGER | ARMap Manager |
AUDIT_TRAIL | Detailed information about actions executed as part of service monitoring |
AUTOPILOT_PROVIDER | Autoscaling actions based on service monitoring thresholds |
AWS_CONNECT | Provisioning and data collection for Amazon Web Services |
AWS_NOTIFICATIONS | Notifications for Amazon Web Services monitoring |
AWS_PROVIDER | Provisioning of Amazon Web Services instances |
AZURE | Azure Service Manager Provider (Azure Classic) |
AZURE_RM_PROVIDER | Azure Resource Manager provider |
BDA_CLIENT_API | Data Automation client API |
BLUEPRINT | Service blueprints |
BSA_CACHE | BMC BladeLogic Server Automation cache |
CACHE | Cache |
CALLOUT | Callhandler, callouts |
CLOUD_ACTION_PROVIDER | Provides Platform Manager API/Operations as actions for auto-scaling |
CLOUD_MANAGER | Accepting API requests, and forwarding them for further processing |
CUSTOM_ACTION_PROVIDER | Custom policies for service monitoring |
DB | CloudDB |
EAR_PROVIDER | Manages objects (such as service requests, service offerings, and so on) on the Enterprise AR. |
EFM | Orchestration of operations (such as creating servers and adding network paths) for a server group |
GENERIC_PROVIDER | Invocations related to callouts (HTTP and BMC Atrium Orchestrator) |
ITSM_SERVICE | Provides services for interacting with BMC Remedy IT Service Management |
LOGIN_SERVICE | Login |
MESSAGE_SERVICE | BMC Cloud Lifecycle Management internal communication between data analysis provider and the rules provider |
MIGRATION | Migration framework and migration tasks |
NOTIFICATION_PROVIDER | Notifications for general service monitoring |
OBJECT_MODEL | Object model |
OPENSTACK | OpenStack Provider |
OPINVOCATION_PROVIDER | Service monitoring policies and rules |
OPS_AWS_PROVIDER | Data collection for monitoring of Amazon Web Services |
OPS_COMPOSITE_EXPRESSIONEVALUATOR | Aggregated data collection for resource sets |
OPS_COMPOSITE_PROVIDER | Aggregated data collection for resource sets |
OPS_DATA_ANALYSIS_PROVIDER | Service monitoring thresholds |
OPS_MANAGER | Data collection for service monitoring thresholds, rules processing, and catalog management |
OPS_QUOTA_PROVIDER | Monitoring of quotas |
OPS_SENSOR_MANAGER | Data collection for service monitoring and quota monitoring |
OPS_VMWARE_PROVIDER | Data collection for monitoring of VMware services |
PAAS_BDA_API | Platform as a Service Data Automation API |
POLICY_ENGINE_DAO | Mapping Server Governor Policy Domain objects to Policy Cloud Objects, and vice versa |
POLICY_EVALUATOR | Manages Service Governor Policy evaluation in the Platform Manager |
PROVIDER | Base Provider and provider initialization part in all providers |
PROVIDER_REGISTRY | Provider Registry |
REGISTRY | Local and global registries |
RESOURCE_MANAGER | Onboarding, creating, and decommissioning infrastructure resources like clusters, virtual machines, and servers |
RULESMANAGER_PROVIDER | Creation and management of service monitoring policies |
SCHEDULER | Scheduling of tasks within Platform Manager |
SESSION_MANAGER | Session manager |
SVCOPS | Service monitoring (more detail needed) |
TASK | TaskManager |
TASK_SP | Task status aggregation and propagation within the Task Manager subsystem |
TERREMARK | Terremark Provider |
UIOMHANDLER | Interactions between the BMC My Cloud Services console and the Platform Manager |
UTIL | Utility methods across Platform Manager |
UTILS | Utility methods useful across the platform manager |
VCLOUD | Integration with VMware vCloud Director |
VMWARE_CONNECT | Provisioning and data collection for VMware services |
WLM | Orchestration of operations that manage the lifecycle of a service |
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
- Log on to the server that hosts Platform Manager.
- 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
- Find the categoryDebugLevels access attribute value object.
Remove the debug level options from the attributeValueobject by setting the value as follows:
"attributeValue": "",- Save the cloudservices.json file.