87 lines
2.7 KiB
Markdown
87 lines
2.7 KiB
Markdown
|
Debugging
|
||
|
=========
|
||
|
|
||
|
Logging
|
||
|
-------
|
||
|
|
||
|
PicoFeed log in memory the execution flow, if a feed doesn't work correctly it's easy to see what is wrong.
|
||
|
|
||
|
### Reading messages
|
||
|
|
||
|
```php
|
||
|
use PicoFeed\Logging\Logger;
|
||
|
|
||
|
// All messages are stored inside an Array
|
||
|
print_r(Logger::getMessages());
|
||
|
```
|
||
|
|
||
|
You will got an output like that:
|
||
|
|
||
|
```php
|
||
|
Array
|
||
|
(
|
||
|
[0] => Fetch URL: http://petitcodeur.fr/feed.xml
|
||
|
[1] => Etag:
|
||
|
[2] => Last-Modified:
|
||
|
[3] => cURL total time: 0.711378
|
||
|
[4] => cURL dns lookup time: 0.001064
|
||
|
[5] => cURL connect time: 0.100733
|
||
|
[6] => cURL speed download: 74825
|
||
|
[7] => HTTP status code: 200
|
||
|
[8] => HTTP headers: Set-Cookie => start=R2701971637; path=/; expires=Sat, 06-Jul-2013 05:16:33 GMT
|
||
|
[9] => HTTP headers: Date => Sat, 06 Jul 2013 03:55:52 GMT
|
||
|
[10] => HTTP headers: Content-Type => application/xml
|
||
|
[11] => HTTP headers: Content-Length => 53229
|
||
|
[12] => HTTP headers: Connection => close
|
||
|
[13] => HTTP headers: Server => Apache
|
||
|
[14] => HTTP headers: Last-Modified => Tue, 02 Jul 2013 03:26:02 GMT
|
||
|
[15] => HTTP headers: ETag => "393e79c-cfed-4e07ee78b2680"
|
||
|
[16] => HTTP headers: Accept-Ranges => bytes
|
||
|
....
|
||
|
)
|
||
|
```
|
||
|
|
||
|
### Remove messages
|
||
|
|
||
|
All messages are stored in memory, if you need to clear them just call the method `Logger::deleteMessages()`:
|
||
|
|
||
|
```php
|
||
|
Logger::deleteMessages();
|
||
|
```
|
||
|
|
||
|
Command line utility
|
||
|
====================
|
||
|
|
||
|
PicoFeed provides a basic command line tool to debug feeds quickly.
|
||
|
The tool is located in the root directory project.
|
||
|
|
||
|
### Usage
|
||
|
|
||
|
```bash
|
||
|
$ ./picofeed
|
||
|
Usage:
|
||
|
./picofeed feed <feed-url> # Parse a feed a dump the ouput on stdout
|
||
|
./picofeed debug <feed-url> # Display all logging messages for a feed
|
||
|
./picofeed item <feed-url> <item-id> # Fetch only one item
|
||
|
./picofeed nofilter <feed-url> <item-id> # Fetch an item but with no content filtering
|
||
|
```
|
||
|
|
||
|
### Example
|
||
|
|
||
|
```bash
|
||
|
$ ./picofeed debug https://linuxfr.org/
|
||
|
Exception thrown ===> "Invalid SSL certificate"
|
||
|
Array
|
||
|
(
|
||
|
[0] => [2014-11-08 14:04:14] PicoFeed\Client\Curl Fetch URL: https://linuxfr.org/
|
||
|
[1] => [2014-11-08 14:04:14] PicoFeed\Client\Curl Etag provided:
|
||
|
[2] => [2014-11-08 14:04:14] PicoFeed\Client\Curl Last-Modified provided:
|
||
|
[3] => [2014-11-08 14:04:16] PicoFeed\Client\Curl cURL total time: 1.850634
|
||
|
[4] => [2014-11-08 14:04:16] PicoFeed\Client\Curl cURL dns lookup time: 0.00093
|
||
|
[5] => [2014-11-08 14:04:16] PicoFeed\Client\Curl cURL connect time: 0.115213
|
||
|
[6] => [2014-11-08 14:04:16] PicoFeed\Client\Curl cURL speed download: 0
|
||
|
[7] => [2014-11-08 14:04:16] PicoFeed\Client\Curl cURL effective url: https://linuxfr.org/
|
||
|
[8] => [2014-11-08 14:04:16] PicoFeed\Client\Curl cURL error: SSL certificate problem: Invalid certificate chain
|
||
|
)
|
||
|
```
|