Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Central de ajuda/ TaurusDB/ Referência de API/ APIs (recomendadas)/ Gerenciamento de logs/ Obtenção de links para download de logs de consulta lenta
Atualizado em 2025-05-23 GMT+08:00

Obtenção de links para download de logs de consulta lenta

Função

Essa API é usada para obter links para baixar logs de consulta lenta. Antes de chamar essa API:

URI

POST /v3/{project_id}/instances/{instance_id}/{node_id}/slowlog-download

Tabela 1 Parâmetros de URI

Parâmetro

Obrigatório

Tipo

Descrição

project_id

Sim

String

ID do projeto de um locatário numa região.

Para obter esse valor, consulte Obtenção de um ID de projeto.

instance_id

Sim

String

ID da instância, que é compatível com o formato UUID.

node_id

Sim

String

ID do nó.

Parâmetros de solicitação

Tabela 2 Parâmetros de cabeçalho de solicitação

Parâmetro

Obrigatório

Tipo

Descrição

X-Auth-Token

Sim

String

Token do usuário.

Para obter esse valor, chame a API do IAM para obter um token de usuário.

O valor de X-Subject-Token no cabeçalho da resposta é o valor do token.

X-Language

Não

String

Tipo de linguagem da solicitação. O valor padrão é en-us.

Valores:

  • en-us
  • zh-cn

Parâmetros de resposta

Código de status: 200

Tabela 3 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

list

Array of DownloadSlowLogFileItem objects

Links para baixar logs de consultas lentas.

count

Integer

Número de registros.

Tabela 4 DownloadSlowLogFileItem

Parâmetro

Tipo

Descrição

job_id

String

ID da tarefa.

file_name

String

Nome de arquivo.

status

String

Status.

Valores:

  • SUCCESS: o link de download foi gerado.
  • EXPORTING: o link de download está sendo gerado.
  • FAILED: o link de download falhou ao ser gerado.

file_size

String

Tamanho do arquivo, em KB.

file_link

String

Link de download. O link é válido por 5 minutos.

create_at

Long

Hora de criação.

updated_at

Long

Hora da atualização.

Código de status: 400

Tabela 5 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Mensagem de erro.

Código de status: 500

Tabela 6 Parâmetros do corpo de resposta

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Mensagem de erro.

Exemplo de solicitação

Obtenção de links para download de logs de consulta lenta

POST https://{endpoint}/v3/054e292c9880d4992f02c0196d3ea468/instances/6754902da1f447269c6979b0590102a5in07/941d21130b3c4899ad1a752a0945befdno07/slowlog-download

Exemplo de resposta

Código de status: 200

Bem-sucedido.

{
  "list" : [ {
    "job_id" : "73a5f4df-a111-4e09-b543-5ff3863eda71",
    "file_name" : "62b83dfd385f4d96afa6c7afd36dad7b_gaussdbformysql_slowlog_download_20240816081247776",
    "status" : "SUCCESS",
    "file_size" : 0,
    "file_link" : "https://obs.cn-southwest-244.ulanqab.huawei.com:443/dbsbucket-0-cn-southwest-244-ea3ffcbdb5cc4b5789a77884f9******/62b83dfd385f4d96afa6c7afd36dad7b_gaussdbformysql_slowlog_download_20240816081247776?AWSAccessKeyId=********************&Expires=1723796280&response-cache-control=no-cache%2Cno-store&Signature=51RXPvQJg2RSolfqCHOqF5********",
    "create_at" : 1723795967769,
    "updated_at" : 1723795980907
  } ],
  "count" : 1
}

Exemplo de código SDK

O exemplo de código SDK é o seguinte.

Java

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.gaussdb.v3.region.GaussDBRegion;
import com.huaweicloud.sdk.gaussdb.v3.*;
import com.huaweicloud.sdk.gaussdb.v3.model.*;


public class DownloadSlowLogFileSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        GaussDBClient client = GaussDBClient.newBuilder()
                .withCredential(auth)
                .withRegion(GaussDBRegion.valueOf("<YOUR REGION>"))
                .build();
        DownloadSlowLogFileRequest request = new DownloadSlowLogFileRequest();
        request.withInstanceId("{instance_id}");
        request.withNodeId("{node_id}");
        try {
            DownloadSlowLogFileResponse response = client.downloadSlowLogFile(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}

Python

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkgaussdb.v3.region.gaussdb_region import GaussDBRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkgaussdb.v3 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = GaussDBClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(GaussDBRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = DownloadSlowLogFileRequest()
        request.instance_id = "{instance_id}"
        request.node_id = "{node_id}"
        response = client.download_slow_log_file(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

Go

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    gaussdb "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := gaussdb.NewGaussDBClient(
        gaussdb.GaussDBClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.DownloadSlowLogFileRequest{}
	request.InstanceId = "{instance_id}"
	request.NodeId = "{node_id}"
	response, err := client.DownloadSlowLogFile(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

Mais linguagens de programação

Para obter exemplos de código SDK em mais linguagens de programação, visite API Explorer e clique na guia Sample Code. Exemplos de código podem ser gerados automaticamente.

Código de status

Para mais detalhes, consulte Códigos de status.

Código de erro

Para mais detalhes, consulte Códigos de erro.