Jump to: navigation, search

Difference between revisions of "Trove/DBInstanceLogOperationV1"

(Request Parameters:)
(DBLog Database Model)
Line 35: Line 35:
 
|}
 
|}
  
== DBLog Database Model ==
+
== DBLog Response ==
 
: DBLog is responsible for database log file stored in Swift container
 
: DBLog is responsible for database log file stored in Swift container
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
 
! Name !! Description!! Type
 
! Name !! Description!! Type
|-
 
| ID || UUDI || String
 
|-
 
 
| DBInstanceID || Instance ID || String
 
| DBInstanceID || Instance ID || String
 
|-
 
|-
| Location || URL. Storage location. || String
+
| Manifest || DBInstance ID + log file name || String
|-
 
| CreatedAt || Date || String
 
|-
 
| DeletedAt || Date || String
 
 
|-
 
|-
 
| LogFileName|| Example || Example
 
| LogFileName|| Example || Example
|-
 
| Deleted || Signals if record is deleted || Boolen
 
 
|}
 
|}
  

Revision as of 10:42, 23 December 2013

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). Deployer would decide which log files would be available for trove user.

API Schema

DownloadDBLogFile request parameters and DBLog Model

Description: Downloads current database log file into Swift container.

Request Parameters:

Parameter name Description Type Required
Instance ID or Name The customer-assigned name of the DB instance that contains the log files. String Yes
LogFileName Log file name String Yes
Marker For paginating String No

Response Elements

Name Description Type Errors
LogFileData The following elements are returned in a structure named DBLog DBLog DBInstanceNotFound. HTTP 404

DBLog Response

DBLog is responsible for database log file stored in Swift container
Name Description Type DBInstanceID Instance ID String
Manifest DBInstance ID + log file name String
LogFileName Example Example

Server-side configuration

  • Trove taskmanager and api services would require next conf values:
  1. log_file_storage_dir per datastore (could be retrieved from database configuration at guest side).
  2. pagination limit.

Guest-side configuration

  • Same as server side, guest side requires several configuration values:
  1. naming convention: uuid+daytime.log
  2. manifest convention: *.log or *tar.bz2 or *tar.gz
  3. Storage Strategy: Swift
  4. Container: logs_files