- 安装AWS SDK for PHP,并在代码中引入以下命名空间:
use Aws\Common\Enum\Region;
use Aws\Common\Aws;
use Aws\S3\Exception\S3Exception;
use Aws\S3\S3Client;
use Aws\Common\Exception\MultipartUploadException;
- 创建AWS S3客户端对象,并指定日志文件未来将上传至的S3 Bucket:
// 首先需要初始化AWS SDK
$aws = Aws::factory(array(
'key' => '',
'secret' => '',
'region' => Region::AP_NORTHEAST_1 // 选择Bucket所在的region
));
$s3client = $aws->get('s3');
$bucketName = '';
- 在代码中记录日志的位置添加以下代码,以将该日志文件上传至S3 Bucket中保存:
$logPath = '';
$logKey = 'logs/' . date('YmdHis') . '_' . basename($logPath);
$logFile = fopen($logPath, 'r');
try {
$s3client->putObject(array(
'Bucket' => $bucketName,
'Key' => $logKey,
'Body' => $logFile
));
} catch (S3Exception $e) {
error_log($e->getMessage());
}
fclose($logFile);
- 完成以上步骤后,日志文件将会被自动上传至S3 Bucket,可以在S3控制台上查看该日志文件。