`ThinkPHP`æä¾äº`Socket`æ¥å¿é©±å¨ç¨äºæ¬å°åè¿ç¨è°è¯ã
é¦å
éè¦å®è£
`think-socketlog`æ©å±
```
composer require topthink/think-socketlog
```
## `Socket`è°è¯
åªéè¦å¨`log.php`é
ç½®æ件ä¸è®¾ç½®å¦ä¸ï¼
~~~
return [
'type' => 'SocketLog',
'host' => 'slog.thinkphp.cn',
//æ¥å¿å¼ºå¶è®°å½å°é
ç½®çclient_id
'force_client_ids' => [],
//éå¶å
许读åæ¥å¿çclient_id
'allow_client_ids' => [],
]
~~~
> ä¸é¢çhosté
ç½®å°åæ¯å®æ¹æä¾çå
¬ç¨æå¡ç«¯ï¼é¦å
éè¦å»[ç³è¯·client_id](http://slog.thinkphp.cn) ã
使ç¨Chromeæµè§å¨è¿è¡åï¼æå¼`审æ¥å
ç´ ->Console`ï¼å¯ä»¥çå°å¦ä¸æ示ï¼
![](https://box.kancloud.cn/70ece7a35e9c818533ae5f0252ebe1e9_878x131.png)
`SocketLog`éè¿`websocket`å°è°è¯æ¥å¿æå°å°æµè§å¨ç`console`ä¸ãä½ è¿å¯ä»¥ç¨å®æ¥åæå¼æºç¨åºï¼åæSQLæ§è½ï¼ç»åtaintåæç¨åºæ¼æ´ã
### å®è£
Chromeæ件
`SocketLog`é¦å
éè¦å®è£
`chrome`æ件ï¼Chrome[æ件å®è£
页é¢](https://chrome.google.com/webstore/detail/socketlog/apkmbfpihjhongonfcgdagliaglghcod) ï¼éç¿»å¢ï¼
### 使ç¨æ¹æ³
* é¦å
ï¼è¯·å¨chromeæµè§å¨ä¸å®è£
好æ件ã
* å®è£
æå¡ç«¯`npm install -g socketlog-server` , è¿è¡å½ä»¤Â `socketlog-server` å³å¯å¯å¨æå¡ã å°ä¼å¨æ¬å°èµ·ä¸ä¸ªwebsocketæå¡ ï¼çå¬ç«¯å£æ¯1229 ã
* å¦ææ³æå¡åå°è¿è¡ï¼Â `socketlog-server > /dev/null &`Â
### åæ°
* `client_id`: å¨chromeæµè§å¨ä¸ï¼å¯ä»¥è®¾ç½®æ件ç`Client_ID` ï¼**Client_ID**æ¯ä½ ä»»ææå®çå符串ãÂ
![](https://box.kancloud.cn/2016-05-20_573eb7a0a6855.png)
* 设置`client_id`åè½å®ç°ä»¥ä¸åè½ï¼
* 1ï¼é
ç½®`allow_client_ids` é
置项ï¼è®©æå®çæµè§å¨æè½è·å¾æ¥å¿ï¼è¿æ ·å°±å¯ä»¥æè°è¯ä»£ç 带ä¸çº¿ã æ®éç¨æ·è®¿é®ä¸ä¼è§¦åè°è¯ï¼ä¸ä¼åéæ¥å¿ã å¼å人å访é®å°±è½ççè°è¯æ¥å¿ï¼ è¿æ ·å©äºæ¾çº¿ä¸bugã **Client_ID** 建议设置为å§åæ¼é³å ä¸éæºå符串ï¼è¿æ ·å¦ææå工离èå¯ä»¥å°å
¶å¯¹åºç`client_id`ä»é
置项`allow_client_ids`ä¸ç§»é¤ã `client_id`é¤äºå§åæ¼é³ï¼å ä¸éæºå符串çç®çï¼ä»¥é²å«äººæ ¹æ®ä½ å
¬å¸åå·¥å§åçæµåº`client_id`,è·å线ä¸çè°è¯æ¥å¿ã
* 设置`allow_client_ids`示ä¾ä»£ç ï¼
~~~
'allow_client_ids'=>['thinkphp_zfH5NbLn','luofei_DJq0z80H'],
~~~
* 2, 设置`force_client_ids`é
置项ï¼è®©åå°èæ¬ä¹è½è¾åºæ¥å¿å°chromeã ç½ç«æå¯è½ç¨äºéåï¼ä¸äºä¸å¡é»è¾éè¿åå°èæ¬å¤çï¼ å¦æåå°èæ¬éè¦è°è¯ï¼ä½ ä¹å¯ä»¥å°æ¥å¿æå°å°æµè§å¨çconsoleä¸ï¼ å½ç¶åå°èæ¬ä¸åæµè§å¨æ¥è§¦ï¼ä¸ç¥éå½å触åç¨åºçæ¯åªä¸ªæµè§å¨ï¼æ以æ们éè¦å¼ºå¶å°æ¥å¿æå°å°æå®`client_id`çæµè§å¨ä¸é¢ã æ们å¨åå°èæ¬ä¸ä½¿ç¨SocketLogæ¶è®¾ç½®`force_client_ids` é
置项æå®è¦å¼ºå¶è¾åºæµè§å¨ç`client_id` å³å¯ã
- åºè¨
- åºç¡
- å®è£
- å¼åè§è
- ç®å½ç»æ
- é ç½®
- æ¶æ
- 请æ±æµç¨
- æ¶ææ»è§
- å ¥å£æ件
- å¤åºç¨æ¨¡å¼
- URL访é®
- 容å¨åä¾èµæ³¨å ¥
- æå¡
- é¨é¢
- ä¸é´ä»¶
- äºä»¶
- è·¯ç±
- è·¯ç±å®ä¹
- åéè§å
- è·¯ç±å°å
- è·¯ç±åæ°
- è·¯ç±ä¸é´ä»¶
- è·¯ç±åç»
- èµæºè·¯ç±
- 注解路ç±
- è·¯ç±ç»å®
- ååè·¯ç±
- MISSè·¯ç±
- è·¨å请æ±
- URLçæ
- æ§å¶å¨
- æ§å¶å¨å®ä¹
- åºç¡æ§å¶å¨
- 空æ§å¶å¨
- èµæºæ§å¶å¨
- æ§å¶å¨ä¸é´ä»¶
- 请æ±
- 请æ±å¯¹è±¡
- 请æ±ä¿¡æ¯
- è¾å ¥åé
- 请æ±ç±»å
- HTTP头信æ¯
- 伪éæ
- åæ°ç»å®
- 请æ±ç¼å
- ååº
- ååºè¾åº
- ååºåæ°
- éå®å
- æ件ä¸è½½
- æ°æ®åº
- è¿æ¥æ°æ®åº
- åå¸å¼æ°æ®åº
- æ¥è¯¢æé å¨
- æ¥è¯¢æ°æ®
- æ·»å æ°æ®
- æ´æ°æ°æ®
- å é¤æ°æ®
- æ¥è¯¢è¡¨è¾¾å¼
- é¾å¼æä½
- where
- table
- alias
- field
- strict
- limit
- page
- order
- group
- having
- join
- union
- distinct
- lock
- cache
- comment
- fetchSql
- force
- partition
- failException
- sequence
- replace
- extra
- duplicate
- procedure
- èåæ¥è¯¢
- å页æ¥è¯¢
- æ¶é´æ¥è¯¢
- é«çº§æ¥è¯¢
- è§å¾æ¥è¯¢
- JSONå段
- åæ¥è¯¢
- åçæ¥è¯¢
- æ¥è¯¢äºä»¶
- è·åå¨
- äºå¡æä½
- åå¨è¿ç¨
- æ°æ®é
- æ°æ®åºé©±å¨
- 模å
- å®ä¹
- 模åå段
- æ°å¢
- æ´æ°
- å é¤
- æ¥è¯¢
- æ¥è¯¢èå´
- JSONå段
- è·åå¨
- ä¿®æ¹å¨
- æç´¢å¨
- æ°æ®é
- èªå¨æ¶é´æ³
- åªè¯»å段
- 软å é¤
- ç±»å转æ¢
- 模åè¾åº
- 模åäºä»¶
- 模åå ³è
- ä¸å¯¹ä¸å ³è
- ä¸å¯¹å¤å ³è
- è¿ç¨ä¸å¯¹å¤
- è¿ç¨ä¸å¯¹ä¸
- å¤å¯¹å¤å ³è
- å¤æå ³è
- å ³èé¢è½½å ¥
- å ³èç»è®¡
- å ³èè¾åº
- è§å¾
- 模æ¿åé
- è§å¾è¿æ»¤
- 模æ¿æ¸²æ
- 模æ¿å¼æ
- è§å¾é©±å¨
- é误åæ¥å¿
- å¼å¸¸å¤ç
- æ¥å¿å¤ç
- è°è¯
- è°è¯æ¨¡å¼
- Traceè°è¯
- SQLè°è¯
- åéè°è¯
- è¿ç¨è°è¯
- éªè¯
- éªè¯å¨
- éªè¯è§å
- é误信æ¯
- éªè¯åºæ¯
- è·¯ç±éªè¯
- å ç½®è§å
- 表å令ç
- 注解éªè¯
- æ项
- ç¼å
- Session
- Cookie
- å¤è¯è¨
- ä¸ä¼
- å½ä»¤è¡
- å¯å¨å ç½®æå¡å¨
- æ¥ççæ¬
- èªå¨çæåºç¨ç®å½
- å建类åºæ件
- æ¸ é¤ç¼åæ件
- çææ°æ®è¡¨å段ç¼å
- çæè·¯ç±æ å°ç¼å
- è¾åºè·¯ç±å®ä¹
- èªå®ä¹æ令
- æ©å±åº
- æ°æ®åºè¿ç§»å·¥å ·
- Workerman
- thinkå©æå·¥å ·åº
- éªè¯ç
- Swoole
- éå½
- å©æå½æ°
- å级æ导
- æ´æ°æ¥å¿