Trove/DBInstanceLogOperationV1
Contents
Mission
Provide specific API interface to end-user which would allow to manipulate with database log files.
Design
Log manipulations are designed to let user perform log investigations. Since Trove is PaaS - level project, it's user cannot interact with compute instance directly, only with database through given API (database operations).
API Schema
DownloadDBLogFile request parameters and DBLog Model
-
- Description: Downloads current database log file.
Request Parameters:
Parameter name | Description | Type | Required |
---|---|---|---|
Instance ID or Name | The customer-assigned name of the DB instance that contains the log files you want to list. | String | Yes |
LogFileName | DBLog entry name | String | Yes |
Marker | For paginating | String | No |
Response Elements
- The following elements are returned in a structure named DBLog.
- LogFileData
- Log file entry.
- Type: DBLog
- Errors
- DBInstanceNotFound
- DBInstanceIdentifier does not refer to an existing DB instance.
- HTTP Status Code: 404
DBLog Database Model
- ID
- UUID
- Type: String
- DBInstanceID
- UUID of DBInstance.
- Type: String
- Location
- URL. Storage location
- Type: String
- CreateAt
- A POSIX timestamp when the last log entry was created.
- Type: String
- LogFileName
- The name of the log file for the specified DB instance.
- Type: String
- DeletedAt:
- A POSIX timestamp when the log entry was deleted.
- Type: String
- Deleted:
- If record deleted then True
- Type: Boolean
Server-side configuration
- Trove taskmanager and api services would require next conf values:
- log_file_storage_dir per datastore (could be retrieved from database configuration at guest side).
- pagination limit.
Guest-side configuration
- Same as server side, guest side requires several configuration values:
- naming convention: uuid+daytime.log
- manifest convention: *.log or *tar.bz2 or *tar.gz
- Storage Strategy: Swift
- Container: logs_files