reedtechus / azure-data-explorer-laravel
Azure Data Explorer SDK for Laravel
v0.3.0
2023-04-01 15:16 UTC
Requires
- php: ^8.1
- illuminate/contracts: ^9.0
- reedtechus/azure-data-explorer: ^0.3.1
- spatie/laravel-package-tools: ^1.13.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^6.0
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^7.0
- pestphp/pest: ^1.21
- pestphp/pest-plugin-laravel: ^1.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^9.5
- spatie/laravel-ray: ^1.26
This package is auto-updated.
Last update: 2024-09-09 22:06:03 UTC
README
Azure Data Explorer SDK for Laravel
该项目是一个Laravel包,允许您从Laravel应用程序连接到Azure Data Explorer并执行查询。
⚠️ 实验性:该包仍在开发中,尚未准备好用于生产使用。在1.0.0版本之前,可能仍然会进行破坏性更改,而无需进行主版本号更改。
该包是Azure Data Explorer SDK for PHP的直接扩展,由Reed Tech提供,该SDK提供PHP SDK以与Azure Data Explorer REST API交互。
目标
该项目的目标是提供Azure Data Explorer SDK包的Laravel友好接口。
功能路线图
- 通过Redis进行缓存
安装
您可以通过composer安装此包
composer require reedtechus/azure-data-explorer-laravel
以下环境变量对于此包正常工作是必需的
# Azure Data Explorer AZURE_DATA_EXPLORER_TENANT_ID="TENANT_ID" AZURE_DATA_EXPLORER_CLIENT_ID="CLIENT_ID" AZURE_DATA_EXPLORER_CLIENT_SECRET="SECRET" AZURE_DATA_EXPLORER_CLUSTER="CLUSTER" AZURE_DATA_EXPLORER_REGION="REGION" AZURE_DATA_EXPLORER_DATABASE="DATABASE_NAME"
您可以使用以下命令发布配置文件
php artisan vendor:publish --tag="azure-data-explorer-laravel-config"
这是发布配置文件的内容
return [ /* |-------------------------------------------------------------------------- | Azure Data Explorer |-------------------------------------------------------------------------- | | This is the configuration for the Azure Data Explorer package. | */ // The base URL of the Azure Data Explorer API. 'base_url' => env('AZURE_DATA_EXPLORER_BASE_URL', 'https://login.microsoftonline.com'), // The tenant ID of the Azure Data Explorer API. 'tenant_id' => env('AZURE_DATA_EXPLORER_TENANT_ID'), // The client ID of the Azure Data Explorer API. 'client_id' => env('AZURE_DATA_EXPLORER_CLIENT_ID'), // The client secret of the Azure Data Explorer API. 'client_secret' => env('AZURE_DATA_EXPLORER_CLIENT_SECRET'), // The cache driver to use for caching responses. 'cache_driver' => env('AZURE_DATA_EXPLORER_CACHE_DRIVER', 'redis'), // The cache TTL to use for caching responses. 'cache_ttl' => env('AZURE_DATA_EXPLORER_CACHE_TTL', 3500), // The cluster of the Azure Data Explorer API. 'cluster' => env('AZURE_DATA_EXPLORER_CLUSTER'), // The region of the Azure Data Explorer API. 'region' => env('AZURE_DATA_EXPLORER_REGION'), // The database of the Azure Data Explorer API. 'database' => env('AZURE_DATA_EXPLORER_DATABASE'), ];
用法
// Option A: More efficient to save and re-use the AzureDataExplorer class instance for followup queries $de = new AzureDataExplorer(); $results = $de->query($query); // Option B: you can use the AzureDataExplorer::queryOnce() method to perform the query $results = AzureDataExplorer::queryOnce($query);
这些调用返回一个QueryResultsDTO
对象(或抛出异常)。
使用结果
dump('Columns: '.implode(', ', $results->columns)); dump('Number of Results: '.count($results->data)); dump('Execution Time: '.$results->executionTime); dump('First Row: '.print_r($results->data[0], true));
测试
composer test
依赖关系
变更日志
请参阅CHANGELOG以获取有关最近更改的更多信息。
安全漏洞
请参阅我们关于如何报告安全漏洞的安全策略。
致谢
此包以任何方式都不受Microsoft的支持或认可。
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。