Jump to: navigation, search

Difference between revisions of "Trove/DBInstanceLogOperationV1"

(DownloadDBLogFile request parameters and DBLog Model)
(DownloadDBLogFile request parameters and DBLog Model)
Line 9: Line 9:
 
=== DownloadDBLogFile request parameters and DBLog Model ===
 
=== DownloadDBLogFile request parameters and DBLog Model ===
 
:
 
:
::Description
+
::Description: Downloads current database log file.
::Downloads current database log file.
 
 
:
 
:
 +
 
=== Request Parameters: ===
 
=== Request Parameters: ===
 
:
 
:

Revision as of 11:24, 18 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).

API Schema

DownloadDBLogFile request parameters and DBLog Model

Description: Downloads current database log file.

Request Parameters:

  • Instance ID or Name
The customer-assigned name of the DB instance that contains the log files you want to list.
Constraints:
Must contain from 1 to 63 alphanumeric characters or hyphens or UUID
Type: String
Required: Yes
  • LogFileName
The name of the log file to be downloaded.
Type: String
Required: Yes
  • Marker
The pagination token provided in the previous request. If this parameter is specified the response includes only records beyond the marker, up to MaxRecords (defined via Trove conf).
Type: String
Required: No
  • NumberOfLines
The number of lines remaining to be downloaded.
Type: Integer
Required: No

Response Elements

The following elements are returned in a structure named DBLog.
LogFileData
Log file entry.
Type: String
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
  • Size
The size, in bytes, of the log file for the specified DB instance.
Type: Long
  • 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:
  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