-
Notifications
You must be signed in to change notification settings - Fork 101
/
Copy pathpackage.xml
558 lines (538 loc) · 15.7 KB
/
package.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
<?xml version="1.0" encoding="UTF-8"?>
<package xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" packagerversion="1.4.7" version="2.0" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
<name>APM</name>
<channel>pecl.php.net</channel>
<summary>Alternative PHP Monitor</summary>
<description>
Monitoring extension for PHP, collects error events and statistics and send them to one of his drivers:
SQLite and MariaDB/MySQL drivers are storing those in a database.
StatsD driver sends them to StatsD using UDP.
Socket driver sends them via UDP or TCP socket using its dedicated protocol.
More drivers to come (SNMP, e-mail, Hadoop,...).
A web frontend exists for manipulating the data stored in database at: https://github.com/patrickallaert/php-apm-web
</description>
<lead>
<name>Patrick Allaert</name>
<user>patrickallaert</user>
<email>[email protected]</email>
<active>yes</active>
</lead>
<developer>
<name>Olivier Garcia</name>
<user>oliviergarcia</user>
<email>[email protected]</email>
<active>yes</active>
</developer>
<lead>
<name>Davide Mendolia</name>
<user>dmendolia</user>
<email>[email protected]</email>
<active>no</active>
</lead>
<date>2017-02-13</date>
<version>
<release>2.1.2</release>
<api>2.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- Wrong path for mysql.h prevents Windows build
- Possible segmentation fault and invalid errors under PHP 7.0
- Make error: duplicate symbol for architecture x86_64 #25
- Build with PHP 7.1 #44 (Thanks Remi Collet)
</notes>
<contents>
<dir name="/">
<file name="apm.c" role="src" />
<file name="apm.ini" role="doc" />
<file name="AUTHORS" role="doc" />
<file name="backtrace.c" role="src" />
<file name="backtrace.h" role="src" />
<file name="config.m4" role="src" />
<file name="config.w32" role="src" />
<file name="driver_mysql.c" role="src" />
<file name="driver_mysql.h" role="src" />
<file name="driver_socket.c" role="src" />
<file name="driver_socket.h" role="src" />
<file name="driver_sqlite3.c" role="src" />
<file name="driver_sqlite3.h" role="src" />
<file name="driver_statsd.c" role="src" />
<file name="driver_statsd.h" role="src" />
<file name="CONTRIBUTORS" role="doc" />
<file name="LICENSE" role="doc" />
<file name="NEWS" role="doc" />
<file name="php_apm.h" role="src" />
<file name="README.md" role="doc" />
</dir>
</contents>
<dependencies>
<required>
<php>
<min>5.2.0</min>
</php>
<pearinstaller>
<min>1.4.0</min>
</pearinstaller>
</required>
</dependencies>
<providesextension>apm</providesextension>
<extsrcrelease>
<configureoption name="with-sqlite3" default="yes" prompt="Enable Sqlite3 support"/>
<configureoption name="with-mysql" default="yes" prompt="Enable MariaDB/MySQL support"/>
<configureoption name="enable-socket" default="yes" prompt="Enable Socket support"/>
<configureoption name="enable-statsd" default="yes" prompt="Enable Statsd support"/>
</extsrcrelease>
<changelog>
<release>
<version>
<release>2.1.2</release>
<api>2.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2017-02-13</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- Wrong path for mysql.h prevents Windows build
</notes>
</release>
<release>
<version>
<release>2.1.1</release>
<api>2.0.0</api>
</version>
<stability>
<release>beta</release>
<api>stable</api>
</stability>
<date>2016-03-29</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- Compilation issue with ZTS
</notes>
</release>
<release>
<version>
<release>2.1.0</release>
<api>2.0.0</api>
</version>
<stability>
<release>beta</release>
<api>stable</api>
</stability>
<date>2016-03-29</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Added:
- Support for PHP 7
- collecting HTTP method
Improved:
- Better coexistence with Xdebug
</notes>
</release>
<release>
<version>
<release>2.0.5</release>
<api>2.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2015-06-17</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- missing apm.statsd_exception_mode and apm.socket_exception_mode
- sqlite3.h file not found in Windows build
Improved:
- Minor optimizations in stacktrace creation
</notes>
</release>
<release>
<version>
<release>2.0.4</release>
<api>2.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2015-06-01</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- Temporary buffer not freed when generating stacktraces.
- Arguments in stacktraces dumped with a bigger depth than what is configured with apm.dump_max_depth.
</notes>
</release>
<release>
<version>
<release>2.0.3</release>
<api>2.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2015-05-18</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- Double initialization of request data.
This could lead to data being present twice in DBs (reproducible with both SQLite and MySQL enabled).
Changed:
- Default value of apm.dump_max_depth decreased to 1.
With today's application complexity, the amount of data collected in stacktraces
including arguments can lead to several thousands of MiB of memory consumed.
We recommend increasing this value with care.
- Weird things could happen when changing 'apm.enabled' during a request. It doesn't make much sense to support
in request activation/deactivation. 'apm.enabled' is therefor now PHP_INI_SYSTEM.
</notes>
</release>
<release>
<version>
<release>2.0.2</release>
<api>2.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2015-03-09</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- Compilation issue on non ZTS setup
</notes>
</release>
<release>
<version>
<release>2.0.1</release>
<api>2.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2015-03-09</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- #10: Bad configure message (thx @RemiCollet)
- #11: Bad version reported (thx @RemiCollet)
- #13: ZTS build is broken (thx @RemiCollet)
- APM not working with XDebug
If Xdebug is enabled as in xdebug_enable() or xdebug.default_enable, APM error callback will not be called.
Use xdebug.default_enable=0 or xdebug_disable() to go through APM error handling.
Improved:
- #12: Installation of files via pecl install
- StatsD driver (thanks @0livier for the discovery!)
Changed:
- Web frontend located on its own repository: https://github.com/patrickallaert/php-apm-web
</notes>
</release>
<release>
<version>
<release>2.0.0</release>
<api>2.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2015-02-20</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
New drivers:
- StatsD
- Socket
Added:
- Per-driver option 'apm.<storage driver>_store_silenced_events that lets you toggle whether to store silenced (@-ed) errors (thanks Mathieu Kooiman (@mathieuk))
- apm.*_exception_mode configuration to control exception collection
- Auto creation of SQLite and MariaDB/MySQL schemas
- Stats:
- User and System CPU time
- Memory Peak Usage
- HTTP response code
- 'application_id' field to categorize the issues per application/server/environment/...
- Support for compilation on Ubuntu (thanks Olivier Garcia (@0livier))
Changed:
- Deep refactoring:
- New DB schema
- No more native functions, retrieval of data is directly made in PHP
- SQLite drivder attempts to create the directory structure by himself
- Renamed 'slow request' to 'stats'
- Connect to MySQL once and reconnect if needed
- Small UI improvements
- Avoiding int / uint conversion
- MariaDB/MySQL driver activated by default
Fixed:
- Parse error test failing on PHP 5.4
- Possible segfault with APM_DEBUG used outside RINIT/RSHUTDOWN phases
- Missing disconnect from SQLite DB if changed with ini_set()
- Too few arguments to sprintf() with MariaDB/MySQL backend
- Possible segfault with PHP 5.5
- Segmentation fault with "zend_mm_heap corrupted" message.
- Missing zval reference incrementing
- Out of memory error in backtrace generation
- Removed hard-coded limit of 64kB json data
- Do not activate silence handler if APM is not enabled
- Some compiler warnings
- Incorrect status propagation for PHP_RSHUTDOWN_FUNCTION
- Several memory leaks
Removed:
- Deffered processing (can't be easily implemented in a generic and driver
agnostic way. Depending on the drivers, some deffered processing will
happen inside them.)
- Reference SQL files, see source code for that ;-)
</notes>
</release>
<release>
<version>
<release>2.0.0alpha1</release>
<api>2.0.0alpha1</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<date>2013-06-07</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Changed:
- Deep refactoring:
- New DB schema
- No more native functions, retrieval of data is directly made in PHP
</notes>
</release>
<release>
<version>
<release>1.1.0RC2</release>
<api>1.1.0RC2</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2013-05-11</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Changed:
- upgraded UI by using tweeter boostrap and upgrading jqGrid
</notes>
</release>
<release>
<version>
<release>1.1.0RC1</release>
<api>1.1.0RC1</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2012-10-19</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Added:
- --with-debugfile[=FILE] option to permit debugging of APM
Changed:
- Lazy loading the connection to the SQLite database
Fixed:
- Ordering by URL not working
- Decouple mysql backend from sqlite3 (#62288)
- Invalid UTF-8 may cause backtrace to be truncated in MySQL driver (#62244)
</notes>
</release>
<release>
<version>
<release>1.1.0beta4</release>
<api>1.1.0beta4</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2012-06-07</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Added:
- Referer
Changed:
- Storing all ts in SQLite as integers
Fixed:
- Bug #62187: The MySQL driver does not store a timestamp for an event (Thanks to mathieu at mollie dot nl, HMWiesinger at gmx dot at).
- Bug #62012: No data collected
- Missing post_vars column definition in SQL creation scripts.
</notes>
</release>
<release>
<version>
<release>1.1.0beta3</release>
<api>1.1.0beta3</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2012-05-27</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- Possible memory not being freed
- Segmentation fault preventing the collection of data (#62012)
</notes>
</release>
<release>
<version>
<release>1.1.0beta2</release>
<api>1.1.0beta2</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2012-05-06</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Fixed:
- Version 1.1.0beta* should be marked as "beta" and not as "stable"
- APM-1.1.0beta1.tgz file contains only package.xml (#61937)
- Some GCC warnings when built with PHP 5.4
- Error callback arguments must be copied in every cases
- Prevent calling the original error handler if Xdebug is loaded
- Possible segfault if MySQL server connection link is gone
</notes>
</release>
<release>
<version>
<release>1.1.0beta1</release>
<api>1.1.0beta1</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2012-04-02</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Added:
- New information stored: IP, host, POST data, cookies
- Configuration to limit the depth when dumping variables (apm.dump_max_depth)
Removed:
- JSON flag for apm_get_*_events and apm_get_*_slow_requests
Changed:
- Some UI refactoring
- Minor optimizations
Fixed:
- Installation failing because of config file being named "config.php"
pecl/pear installer issue?
- Some compilation warnings
- Deffered mode taking only the *mysql* error_reporting into account
- APM not correctly linking to libmysqlclient
- Possible buffer overflows
- Compilation issues related to timelib with PHP >= 5.3.9
</notes>
</release>
<release>
<version>
<release>1.0.1</release>
<api>1.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2011-11-12</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Changed:
- Base install dir for web files, now in php/PECL/APM
Fixed:
- Bug #60276 pecl install fail installing APM
</notes>
</release>
<release>
<version>
<release>1.0.0</release>
<api>1.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2011-06-14</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
This is the initial stable release of APM.
Fixed:
- Script filename could possibly not be filled in case of slow request.
</notes>
</release>
<release>
<version>
<release>1.0.0beta3</release>
<api>1.0.0beta3</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2010-11-07</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Added:
- MySQL driver
- Per driver error reporting level
- Asynchronous processing of events (config option: apm.deffered_processing)
Changed:
- Code refactored to make use of 'APM drivers'
Fixed:
- APM cannot be compiled with PHP < 5.2.2.
- Bug #17502: Drivers' rshutdown run only when slow_request tracking is enabled.
- Bug #17512: Sqlite connections aren't closed at the end of the request.
- Bug #17513: Using MySQL driver, only events of the first incoming request are stored.
- Bug #19421: apm.*_error_reporting is ignored.
</notes>
</release>
<release>
<version>
<release>1.0.0beta2</release>
<api>1.0.0beta2</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2010-01-30</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Second beta release.
</notes>
</release>
<release>
<version>
<release>1.0.0beta1</release>
<api>1.0.0beta1</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2009-11-29</date>
<license uri="http://www.php.net/license">PHP License</license>
<notes>
Initial beta release.
</notes>
</release>
</changelog>
</package>