BitDive Advanced Configuration Guide
This guide explains the configuration options available in config-profiling.yml
. The configuration supports different monitoring settings based on Spring profiles.
Configuration Structure
application:
moduleName: MyApp # Your module name
serviceName: MyService # Your service name
packedScanner: ["com.your.package"] # Your main package to scan
notWorkWithSpringProfiles: ["test"] # Optional: Profiles where monitoring is disabled
monitoringConfigs: # List of monitoring configurations
- forSpringProfile: ["profile1"] # Optional: Spring profile(s) for this config
# monitoring settings...
- # Default config (no profile specified)
# monitoring settings...
Profile-Based Configuration Rules
BitDive selects the appropriate monitoring configuration based on these rules:
-
Default Configuration: When no Spring profiles are active, BitDive uses the configuration without a
forSpringProfile
specified. -
Profile-Specific Configuration: When Spring profiles are active, BitDive uses the configuration where
forSpringProfile
matches the active profile. -
Single Configuration: If there's only one configuration defined, it's used regardless of profiles.
Complete Configuration Example
application:
moduleName: web-app
serviceName: user-service
packedScanner: ["com.example.userservice"]
notWorkWithSpringProfiles: ["test"]
monitoringConfigs:
- forSpringProfile: ["test"]
logLevel: DEBUG
monitoringArgumentMethod: true
monitoringReturnMethod: true
monitoringStaticMethod: true
monitoringOnlySpringComponent: true
dataFile:
path: monitoringData
timerConvertForSend: 10
fileStorageTime: 30
sendFiles:
serverConsumer:
url: https://bitdive-server:8082
vault:
url: https://vault-server:8200
login: username
password: password123
schedulerTimer: 1000
serialization:
excludedPackages: ["com.sun.", "sun.", "org.apache.", "org.springframework."]
maxElementCollection: 50
- # Default configuration
logLevel: INFO
monitoringArgumentMethod: true
monitoringReturnMethod: true
monitoringStaticMethod: false
monitoringOnlySpringComponent: false
sendFiles:
serverConsumer:
url: https://bitdive-server:8082
vault:
url: https://vault-server:8200
login: username
password: password123
Configuration Options
Application Settings
Setting | Description | Required |
---|---|---|
moduleName | Name of your module/application | Yes |
serviceName | Name of your service | Yes |
packedScanner | Array of package names to scan | Yes |
Monitoring Settings
Setting | Description | Default |
---|---|---|
logLevel | Log detail level (DEBUG/INFO/ERRORS) | INFO |
monitoringArgumentMethod | Track method arguments | false |
monitoringReturnMethod | Track return values | false |
monitoringStaticMethod | Track static methods | false |
monitoringOnlySpringComponent | Monitor only Spring components | false |
Data File Settings
Setting | Description | Default |
---|---|---|
dataFile.path | Directory for monitoring files | monitoringData |
dataFile.timerConvertForSend | File conversion interval (seconds) | 10 |
dataFile.fileStorageTime | File retention period (days) | 30 |
Server Consumer Settings
Setting | Description | Required |
---|---|---|
sendFiles.serverConsumer.url | BitDive server URL | Yes |
sendFiles.serverConsumer.vault.url | Vault server URL | Yes |
sendFiles.serverConsumer.vault.login | Vault login | Yes |
sendFiles.serverConsumer.vault.password | Vault password | Yes |
sendFiles.schedulerTimer | Send interval (milliseconds) | 1000 |
Optional Proxy Configuration
sendFiles:
serverConsumer:
url: https://bitdive-server:8082
proxy:
url: http://proxy:8080
login: proxyuser
password: proxypass
Serialization Settings
Setting | Description | Default |
---|---|---|
serialization.excludedPackages | Packages to exclude from monitoring | [] |
serialization.maxElementCollection | Max elements in collections | 50 |
Log Levels
public enum LogLevelEnum {
ERRORS, // Only error messages
INFO, // General operations
DEBUG // Detailed debugging
}
For getting started quickly, refer to our Quick Start Guide.