incubator logger
v2.0.0
อะแดปเตอร์พิเศษสำหรับส่วนประกอบ Phalcon Logger
composer require phalcon/incubator-logger
อะแดปเตอร์สำหรับจัดเก็บบันทึกใน AWS ClodWatch:
หมายเหตุ: ต้องสร้างชื่อกลุ่มและชื่อสตรีมก่อนที่จะเรียกบันทึกใดๆ คุณสามารถทำได้ภายในคอนโซล AWS
use Aws CloudWatchLogs CloudWatchLogsClient ;
use Phalcon Incubator Logger Adapter CloudWatch ;
use Phalcon Logger Logger ;
$ di -> set (
' logger ' ,
function () {
$ client = new CloudWatchLogsClient ([
' credentials ' => [
' key ' => ' AMAZON_CLOUDWATCH_KEY ' ,
' secret ' => ' AMAZON_CLOUDWATCH_SECRET ' ,
],
' region ' => ' AMAZON_CLOUDWATCH_REGION ' ,
' version ' => ' latest ' , // Or any specific
]);
$ adapter = new CloudWatch ( $ client , ' /group/name ' , ' stream-name ' );
return new Logger ( ' messages ' , [ ' main ' => $ adapter ]);
}
);
อะแดปเตอร์สำหรับจัดเก็บบันทึกในตารางฐานข้อมูล:
use Phalcon Db Adapter Pdo Mysql ;
use Phalcon Incubator Logger Adapter Database as DbLogger ;
$ di -> set (
' logger ' ,
function () {
$ connection = new Mysql (
[
' host ' => ' localhost ' ,
' username ' => ' root ' ,
' password ' => ' secret ' ,
' dbname ' => ' audit ' ,
]
);
$ logsName = ' errors ' ;
$ tableName = ' logs ' ;
return new DbLogger ( $ connection , $ logsName , $ tableName );
}
);
ตารางต่อไปนี้ใช้ในการจัดเก็บบันทึก:
CREATE TABLE IF NOT EXISTS ` logs ` (
` id ` INT ( 10 ) unsigned NOT NULL AUTO_INCREMENT,
` name ` VARCHAR ( 32 ) DEFAULT NULL ,
` type ` INT ( 3 ) NOT NULL ,
` content ` text ,
` created_at ` BIGINT unsigned NOT NULL ,
PRIMARY KEY ( ` id ` )
) ENGINE = InnoDB DEFAULT CHARSET = utf8
อะแดปเตอร์เพื่อส่งข้อความโดยโปรโตคอล UDP ไปยังเซิร์ฟเวอร์ภายนอก
use Phalcon Incubator Logger Adapter Udp as UdpLogger ;
$ di -> set (
' logger ' ,
function () {
$ host = ' 192.168.1.2 ' ;
$ port = 65000 ;
return new UdpLogger ( ' errors ' , $ host , $ port );
}
);
อะแดปเตอร์สำหรับเขียนข้อความลงในช่อง Slack
$ adapter = new Phalcon Incubator Logger Adapter Slack ( ' api-token ' , ' channel-name ' );
$ logger = new Phalcon Logger Logger ( ' logger-name ' , [ ' main-slack ' => $ adapter ]);
$ logger -> info ( ' Information message to log in the channel channel-name ' );
เข้าถึงหน้านี้เพื่อสร้าง application
(หลังจากเลือก/สร้างพื้นที่ทำงาน)
ไปที่ Features > OAuth & Permissions
และในส่วน Scopes
-> Add an oauth scope
และเลือกสิทธิ์ต่อไปนี้ :
ตอนนี้คุณสามารถสร้างโทเค็นสำหรับบอท/ผู้ใช้ของคุณได้ในส่วน Install App
ซึ่งมีลักษณะดังนี้:
xoxp-1111111-22222222-33333333-aaaaaaaaaaaaaaaaaaaaaa