Todos os produtos
Search
Central de documentação

Simple Log Service:Usar o SDK do Simple Log Service para PHP com o recurso Dedicated SQL

Última atualização: Jul 03, 2026

Use o SDK do Simple Log Service para PHP para executar consultas SQL com o recurso Dedicated SQL.

Pré-requisitos

  • O Simple Log Service está ativado. Ativar o Simple Log Service.

  • Um par de AccessKey foi criado e obtido. Para mais informações, consulte Par de AccessKey.

    O par de AccessKey de uma conta Alibaba Cloud tem permissões em todas as operações de API. O uso dessas credenciais para realizar operações no Simple Log Service apresenta alto risco. Recomendamos usar um usuário do Resource Access Management (RAM) para chamar operações de API ou executar tarefas rotineiras de O&M. Para criar um usuário RAM, faça login no console do RAM. Verifique se o usuário RAM tem permissões de gerenciamento sobre os recursos do Simple Log Service. Para mais informações, consulte Criar um usuário RAM e conceder permissões.

  • O SDK do Simple Log Service para PHP está instalado. Para mais informações, consulte Instalar o SDK para PHP.

Informações gerais

O recurso Dedicated SQL aprimora a análise SQL e processa centenas de bilhões de registros de dados. Para mais informações, consulte Consulta e análise de alta precisão e alto desempenho (Dedicated SQL).

O Simple Log Service oferece as seguintes operações para o recurso Dedicated SQL:

  • Aliyun_Log_Models_LogStoreSqlRequest: executa consultas Dedicated SQL em um Logstore específico. Esta operação suporta a sintaxe SQL-92 padrão. A instrução de consulta segue o formato Search statement|Analytic statement, e a instrução analítica obedece à sintaxe SQL-92 padrão.

  • Aliyun_Log_Models_ProjectSqlRequest: executa consultas Dedicated SQL em um projeto específico. Esta operação suporta a sintaxe SQL-92 padrão. Especifique uma condição de filtro e um intervalo de tempo na cláusula WHERE da instrução SQL.

Nota

Para filtrar dados antes da análise, recomendamos chamar a operação Aliyun_Log_Models_LogStoreSqlRequest e especificar uma instrução de consulta no formato Search statement|Analytic statement para aumentar a eficiência da análise.

Código de exemplo

O código de exemplo abaixo demonstra como usar o recurso Dedicated SQL. Para mais informações, consulte SDK do Alibaba Cloud Simple Log Service para PHP.

<?PHP
require_once realpath(dirname(__FILE__) . './aliyun-log-php-sdk-master/Log_Autoload.php');
class test
{

    public static function main()
    {
        // The Simple Log Service endpoint. In this example, the Simple Log Service endpoint for the China (Hangzhou) region is used. Replace the parameter value with the actual endpoint.
        $endpoint = 'cn-hangzhou.log.aliyuncs.com';
        // In this example, the AccessKey ID and AccessKey secret are obtained from environment variables.
        $accessKeyId = getenv('ALIBABA_CLOUD_ACCESS_KEY_ID');
        $accessKey = getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET');
        // The name of the project. 
        $project = 'aliyun-test-project';
        // The name of the Logstore. 
        $logstore = 'aliyun-test-logstore';
        // The Security Token Service (STS) token. 
        $token = '';
        // Create a Simple Log Service client. 
        $client = new Aliyun_Log_Client($endpoint, $accessKeyId, $accessKey, $token);

        // Execute an SQL statement in the specified Logstore.  
        $from = time() - 3600;
        $to = time();
        $query = "* | select count(0)";
        $topic = "";
        $request = new Aliyun_Log_Models_LogStoreSqlRequest($project, $logstore, $from, $to, $query, true);
        try {
            $response = $client->executeLogStoreSql($request);
            foreach ($response->getLogs() as $log) {
                print $log->getTime() . "\t";
                foreach ($log->getContents() as $key => $value) {
                    print $key . ":" . $value . "\t";
                }
                print "\n";
            }
            // Display the statistics about the analysis results. 
            // The number of lines of log data that is processed. 
            print "proccesedRows:" . $response->getProcessedRows() . "\n";
            // The time that is required to execute the SQL statement. 
            print "elapsedMilli:" . $response->getElapsedMilli() . "\n";
            // The CPU time that is consumed to execute the SQL statement after the Dedicated SQL feature is enabled. Unit: seconds. You are charged for the Dedicated SQL feature based on the CPU time. For more information, see the topics that are related to billable items.
            print "cpuSec:" . $response->getCpuSec() . "\n";
            // The number of CPU cores that are used to execute the SQL statement after the Dedicated SQL feature is enabled.
            print "cpuCores:" . $response->getCpuCores() . "\n";

        } catch (Aliyun_Log_Exception $ex) {
            logVarDump($ex);
        } catch (Exception $ex) {
            logVarDump($ex);
        }

        // Execute an SQL statement in the specified project. 
        $query = "select count(0) from gs-api where __time__ > to_unixtime(now()) - 300 and __time__ < to_unixtime(now())";
        $request = new Aliyun_Log_Models_ProjectSqlRequest($project, $query, True);
        try {
            $response = $client->executeProjectSql($request);
            #$response = $client->getProjectLogs($request);
            foreach ($response->getLogs() as $log) {
                print $log->getTime() . "\t";
                foreach ($log->getContents() as $key => $value) {
                    print $key . ":" . $value . "\t";
                }
                print "\n";
            }
            // Display the statistics about the analysis results. 
            // The number of lines of log data that is processed.
            print "proccesedRows:" . $response->getProcessedRows() . "\n";
            // The time that is required to execute the SQL statement. 
            print "elapsedMilli:" . $response->getElapsedMilli() . "\n";
            // The CPU time that is consumed to execute the SQL statement after the Dedicated SQL feature is enabled. Unit: seconds. You are charged for the Dedicated SQL feature based on the CPU time. For more information, see the topics that are related to billable items.
            print "cpuSec:" . $response->getCpuSec() . "\n";
            // The number of CPU cores that are used to execute the SQL statement after the Dedicated SQL feature is enabled.
            print "cpuCores:" . $response->getCpuCores() . "\n";
            print "requestId:" . $response->getRequestId() . "\n";

        } catch (Aliyun_Log_Exception $ex) {
            logVarDump($ex);
        } catch (Exception $ex) {
            logVarDump($ex);
        }
    }
}
test::main();    
  • Operação Aliyun_Log_Models_LogStoreSqlRequest

    Chame a operação Aliyun_Log_Models_LogStoreSqlRequest para usar o recurso Dedicated SQL. O formato da solicitação é:

    $from = time()-3600;
    $to = time();
    $query = "* | select count(0)";
    $topic = "";
    $request = new Aliyun_Log_Models_LogStoreSqlRequest($project,$logstore,$from,$to,$topic,$query,$powerSql);

    A tabela a seguir descreve os parâmetros.

    Parâmetro

    Tipo

    Obrigatório

    Exemplo

    Descrição

    $project

    String

    Sim

    N/A

    Nome do projeto. Definido durante a criação do cliente do Simple Log Service. Não é necessário configurá-lo novamente.

    $logstore

    String

    Sim

    N/A

    Nome do Logstore. Definido durante a criação do cliente do Simple Log Service. Não é necessário configurá-lo novamente.

    $from

    Long

    Sim

    time()-3600

    Início do intervalo de tempo da consulta. O valor é um timestamp UNIX que representa o número de segundos decorridos desde 1º de janeiro de 1970, 00:00:00 UTC.

    $to

    Long

    Sim

    time()

    Fim do intervalo de tempo da consulta. O valor é um timestamp UNIX que representa o número de segundos decorridos desde 1º de janeiro de 1970, 00:00:00 UTC.

    $topic

    String

    Não

    topic-test

    Tópico dos logs.

    $query

    String

    Sim

    "* | select count(method)"

    Instrução de consulta. Formato: Search statement|Analytic statement. Para mais informações, consulte Sintaxe.

    Por padrão, o Simple Log Service retorna 100 linhas de dados. Use uma cláusula LIMIT para especificar a quantidade de linhas de dados a retornar. Para mais informações, consulte Cláusula LIMIT.

    $powerSql

    Boolean

    Não

    true

    Define se o recurso Dedicated SQL será usado. Para mais informações, consulte Consulta e análise de alta precisão e alto desempenho (Dedicated SQL). Valores válidos:

    • true: usa o recurso Dedicated SQL.

    • false (padrão): usa o recurso Standard SQL.

  • Operação Aliyun_Log_Models_ProjectSqlRequest

    Chame a operação Aliyun_Log_Models_ProjectSqlRequest para usar o recurso Dedicated SQL. O formato da solicitação é:

    $query = "select count(0) from sls_operation_log where __time__ > to_unixtime(now()) - 300 and __time__ < to_unixtime(now())";
    $request = new Aliyun_Log_Models_ProjectSqlRequest($project,$query,$powerSql);   

    A tabela a seguir descreve os parâmetros.

    Parâmetro

    Tipo

    Obrigatório

    Exemplo

    Descrição

    $project

    String

    Sim

    N/A

    Nome do projeto. Definido durante a criação do cliente do Simple Log Service. Não é necessário configurá-lo novamente.

    $query

    String

    Sim

    " select count(method) from sls_operation_log where __time__ > to_unixtime(now()) - 300 and __time__ < to_unixtime(now())"

    Instrução SQL. Especifique a condição de busca e o intervalo de tempo na cláusula WHERE da instrução SQL.

    Por padrão, o Simple Log Service retorna 100 linhas de dados. Use uma cláusula LIMIT para especificar a quantidade de linhas de dados a retornar. Para mais informações, consulte Cláusula LIMIT.

    $powerSql

    Boolean

    Não

    true

    Define se o recurso Dedicated SQL será usado. Para mais informações, consulte Consulta e análise de alta precisão e alto desempenho (Dedicated SQL). Valores válidos:

    • true: usa o recurso Dedicated SQL.

    • false (padrão): usa o recurso Standard SQL.