-
Notifications
You must be signed in to change notification settings - Fork 1
/
CHANGELOG
2058 lines (1926 loc) · 105 KB
/
CHANGELOG
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
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
pcp-3.10.1 (1 December 2014)
- Currently under development.
pcp-3.10.0 (31 October 2014)
- pmlogextract: improve handling of corrupt archives
- linux pmda: add hinv.{cpu,node}.online metrics
- gluster pmda: thread-based timeout for long queries
- linux pmda: fix hinv.cpu.clock refresh logic
- dmcache pmda: add missing instance request handler
- iostat2pcp: cater for iostat output format changes
- packaging: fix debian suggests vs recommends usage
- sample pmda: add pmStore support for some metrics
- python: pmda module object refcounts improvements
- pmiostat: support archives converted from collectl
- FreeBSD pmda: changes for 32-bit platforms
- docs: html validation fixes for the tutorial
- pmie: rework control and config files
- pmlogger: rework control and config files
- pmstat: add pmlogger config as per man page
- proc pmda: parser rework to improve robustness
- proc pmda: per-proc context switch & other metrics
- man pages: pmdiscoverservices(3) and pmfind(1)
- ds389 pmda: 389 Directory Server PMDA
- ds389log pmda: 389 Directory Server log processing PMDA
- linux pmda: add rpc.server and nfs v4.1 ops metrics
- telnet-probe: fix byte-by-byte copying
- papi pmda: default enable when possible
- docs: improve quick reference guide, use man7.org
- pmproxy: fix new client init for secure connections
- pmdiff: minor output formatting improvements
- linux pmda: fix initialization for netstat metrics
- pmlogger: fix small race on exit condition
- timeval refactoring for improved double arithmetic
- python: drop support for versions older than 2.6
- python3: add pcp module support for 3.3 and newer
- build: workaround qmake handling of library paths
- Mac OSX build/install improvements
- pmwebd: support for more javascript demos (including
graphite/grafana - via separate pcp-webjs package)
- pmwebd: extend precision for floating point outputs
- pmwebd: Access-Control-Allow-Origin header additions
- pmwebd: experimental pthread support
- pmwebd: new options file configuration format
- pmmgr: avoid some granularity-edge races
pcp-3.9.10 (5 September 2014)
- Support for native systemd service files for daemons
- Support for nanosecond resolution event timestamps
- Changes to the FreeBSD build to bring it up to date
- libpcp: reduce daemon memory usage with secure sockets
- libpcp: add auto-deflate support for xz compression
- pmie/pmlogger scripts: xz compression support enabled
- pmie/pmlogger scripts: lzo compression support added
- pmlogconf: fix slow pmlogger_daily remote host startup
- pmcd_wait: fixed to handle af_unix sockets correctly
- pmatop: fix help keys
- pmatop: parse standard pcp options (including archives)
- pmstore: support for local-context mode of operation
- pmdiff: additional reporting options, added to /usr/bin
- pmdiff: fix column layout with custom precision setting
- pmlogsummary: fix time window reporting with -S and -T
- pmdapapi: new agent for PAPI hardware event counters
- pmdagfs2: latency metrics for glock grant/demote/queue
- pmdamysql: change metric semantics for "uptime"
- pmdaxfs: fix DSO mode and allow test data injection
- pmdammv: long option support
- docs: numerous updates to the online documentation
- docs: added a quick reference guide for Red Hat users
pcp-3.9.9 (13 August 2014)
- sar2pcp: support for systat version 10.2.0
- pmiostat(1): new monitor tool with iostat-alike output
- pcp-dmcache(1): new monitor tool for dm-cache devices
- pmdalinux: disk.dm.* metric hierarchiy (device mapper)
- pmdalinux: refine device mapper naming for old platforms
- pmdalinux: allow controlled data injection for QA tests
- pmdadmcache: new agent for device mapper cache targets
- pmdainfiniband: correctly initialise switch metrics
- libpcp: global timeout option for service discovery
- libpcp: __pmDiscoverServicesWithOptions() improvements
- libpcp: grok '%<interface' for link-local ipv6 addresses
- libpcp: derived metrics support for new rate() keyword
- python api: many convenience class module extensions
- python api: timeval accessor helper interfaces
- python api: pmUnitStr now uses thread-safe version
- python api: pmNumberStr_r now available from python
- python api: fix derived metrics interface exceptions
- pmlogconf: mark some log-default metrics as log-once
- dbpmda: use the correct (blocking) socket API variants
- pmlogger_daily: fix $PCP_RUN_DIR creation checks
pcp-3.9.8 (16 July 2014)
- Add overlooked Debian packaging metadata updates.
pcp-3.9.7 (16 July 2014)
- pmie: "ruleset" extensions to the pmie(1) language
- pmdaproc: additional memory and new blkio cgroup metrics
- pmdanvidia: new Nvidia GPU PMDA using NVML interfaces
- pmdainfiniband: add switch counter metrics
- pmdalustrecomm: bug fixes in the lnet memory metrics
- pmdamemcache: fixed underlying socket code
- pmdalinux: mem.util.available for down-rev kernels
- pmdagfs2: several fixes and improvements in behaviour
- pmdas: support for long form command line options
(aix, jbd2, linux, lustre, mounts, processes, sample,
sendmail, txmon, xfs)
- libpcp: 'timeout' option for 'probe' service discovery
- libpcp: secure sockets timeout handling improvements
- pmie examples: updates to the pmie tutorial docs
- pmchart: new MemAvailable view for mem.util.available
- porting: additional GNU/Hurd port updates
- packaging: fix Makepkgs script for old tar versions
- packaging: fix rpm builds for rpm versions prior to 4.6
- libpcp: use minimum required stack for discovery threads
- libpcp: archive folio parsing in option handling code
- python APIs: archive folio parsing for recording tools
- man pages: updates to service discovery APIs and tools
- libpcp: archive interpolation thread safety improvements
- libpcp: fixed memory leak from pmDestroyContext(3)
pcp-3.9.6 (19 June 2014)
- Fix pthreads build fallout for Solaris platforms
- Remove accidental /var/run/pcp install on Debian
- Rename configure.in to configure.ac as autoconf prefers
pcp-3.9.5 (18 June 2014)
- porting work on the GNU/Hurd platform
- porting work on Windows (early MinGW-64 work)
- pmdalinux: add in the new mem.util.available metric
- pmchart: new vCPU view, resolve guest time reporting
- pmwebd: add CORS "Access-Control-Allow-Origin: *" to
JSON response headers
- pmatop: improvements to value fitting
- packaging: gui debuginfo/testsuite correctly replaced
- pmconfig: moved install location for Solaris conflict
- pmstat: fix hostname reporting when in cluster mode
- Coverity scan fixes in libpcp, python, and elsewhere
- packaging: pcp-doc now contains all of the tutorial bits
- python: timeval/metricspec error handling improvements
- pmatop: handle curses problems more gracefully
- pmdapostfix: run as postfix user, not the pcp user
- python: fix pmParseInterval failure segfault
- python: fix segfault when printing empty units
- libpcp: functions for collecting server port numbers
- pmcd.services metric reflecting PCP daemon usage
- libpcp, pmfind: active service probing
- pmproxy, pmwebd: support for service discovery
- pmcollectl, pmatop: improved log writing support
- pmie: long option support
- pmquery: neater output formatting
- pmchart, pmtime: long option support
- pmdasystemd: install the built binary
- python: significant work on the pcp.pmcc module, adding
long option support, scale conversion, an initial fetch
loop method, and entirely new convenience classes
- pmlogcheck: fix bad memory access sigsegv on some logs
- Fix infinite loop in build scripts without Qt enabled
- pmdalinux: add metrics from /proc/net/netstat
- pmdumptext: long option support
- pmcollectl: support for sub-second sampling intervals
- Revive support for RHEL5-era builds, post pcp-gui merge
pcp-3.9.4 (15 May 2014)
- pmlogger: improved archive I/O features, esp for access to
archives while they are actively being written
- pmlogger/pmlc: all flushing operations are now no-ops, but
they remain available for backward compatibility
- pcp-free: use pmConvScale in case metric units ever change
- pmlogmv: fix a couple of argument handling corner cases
- another round of IPv6 updates throughout PCP, making use
of __pm* networking APIs instead of e.g. gethostbyname.
- archive utilities updated for long option support:
pmdumplog, pmlogcheck, pmlogextract, pmlogger, pmloglabel,
pmlogreduce, pmlogrewrite and pmlogsummary
- PMDAs with long option support:
pmdaapache, pmdabash, pmdagfs2, pmdasample, pmdasimple,
pmdatrivial
- libpcp: allow addition of free-form text to usage messages
- pmgetopt: new cross-platform long option handling utility,
allowing pcp shell scripts to acquire long option support
- shell scripts updated to support long options:
pcp, pmie2col, pmie_check, pmie_daily, pmlogger_check,
pmlogger_daily, pmlogger_merge, pmlogmv, pmnewlog, pmwtf,
pmsignal, pmlogconf
- pmlogger: improve pmlc access controls
- man pages: more detailed pmlc/pmlogger access control docs
- pmda systemd: adopt slow-start capability
- pcp command: improved error handling
- pmcollectl: correct reporting of disk and network details
- merged pcp-gui source tree (back) into pcp
pcp-3.9.2 (15 April 2014)
- python api: direct support for creating derived metrics
- python api: fix C strings memory leak in pmExtractValue
- python api: fix pmConvScale parameterization
- python api: pmLookupName API mode allowing partial failure
- python api: improvements to the pmErr exceptions class
- python api: support auto-command-line-parsing in scripts
- python api: switch to thread-safe pmGetContextHostname
- pcp: support for scripted pcp(1) child commands, adding in
pcp-free(1), pcp-uptime(1) and pcp-numastat(1) to get the
ball rolling (python scripts)
- pmlogmv: new utility to atomically move/rename archives
- pmconfig: improvements to quoting for unusual versions
- pmdaproc.sh: allow Install/Remove from any directory
- libpcp: pmgetopt_r interface for use by collector tools
- libpcp_pmda: slow-start PMDA changes
- libpcp_pmda: fix a memory leak dealing in dynamic metrics,
with PMDAs using the optional hashed metric table method.
- libpcp_pmda: long option command line processing interface
- libpcp_pmda: handle POSIXLY_CORRECT arguments internally
- pmcd: remove POSIXLY_CORRECT env modifications
- dbpmda: remove POSIXLY_CORRECT env modifications
- pmlogger_check: add a no-merging-renaming-rewriting option
- pmlogger_daily: don't merge archives if it is not needed
(optimization)
- perl pmda api: add documentation for PCP::PMDA interfaces
- pmdalinux: fix a memory leak in cpu:node name resolution
- pmmgr: fix daemon invocation quirk for some sh variants
- pmdarpm: improvements to concurrent rpmdb access
- pmdarpm: rpm.size metric now 64bit, matching rpmdb changes
- pmdaproc.sh: add $perl_args and $python_args
- long command line options support:
pmdamailq, pmns utilities, newhelp, pmcd, pmcd_wait, pmcpp,
pmdate, pmdbg, pmerr, pmhostname, pmieconf, collectl2pcp,
pmlc, pmmgr, pmproxy, pmwebd.
- Makepkgs changes to support source tarball builds via git
- HACKING file added, describing PCP development methodology
pcp-3.9.1 (19 March 2014)
- libpcp: extended date parsing with GNU getdate(3) strings
- libpcp: APIs for tools to share command-line options code
- libpcp: thread-safe API variant for pmGetContexHostName()
- libpcp: fix local:/unix: bug in __pmUnparseHostSpec
- Begin adding long option support to tools (pminfo, pmval,
pmprobe, pmstore, pmstat, pmclient so far)
- Fix python module bug for PMDAs without instance domains
- pmmgr: -march=i386 build fix
- pmlogger_daily: fix problem with pmproxy connections
- pmdagfs2: miscellaneous updates
- pmdanfsclient: new PMDA exporting NFS client metrics
- pmdazswap: new PMDA exporting compressed swap metrics
- testsuite: porting, several new tests, updates to existing
tests, resolved a couple of SELinux related problems
- Series of portability changes for *BSD platforms
pcp-3.9.0 (19 February 2014)
- Packaging changes for multilib pcp-libs{-devel},pcp-conf
- Packaging changes for pcp-manager and pcp-webapi split
- pmmgr: signal-response improvements
- pmmgr: add pmlogmerge-granular mode
- pmmgr: pmlogrewrite support
- pmmgr: latency-based tie-break for multi-URL target pmcds
- pmmgr.1 man page: outline archiving strategy tradeoffs
- pmdalinux: s390x platform issues in /proc/cpuinfo parser
- pmdalinux: valgrind fix for /proc/stat parser
- pmdagluster: improvements to multiple volume handling
- pmdagluster: support for additional file operations
- pmlogextract: <mark> record handling fix
- pmdas: further robustness improvements to dynamic names
- pmdas: Install scripts can run even when pmcd is stopped
- pmdanfsclient: add source code (not yet enabled in build),
thanks to Ben Myers
- pcp-archive.5 man page: new, documents on-disk log format
- pmdammv: fix sigsegv when no MMV tempdir is present
- pmclient: updated to match the Programmers Guide examples
- pmapi.py: fix python interface to pmLocaltime and pmCtime
- debian: use autotools-dev to update config.{sub,guess},
thanks to Logan Rosen
- pmdumplog: add a -x option for extended timestamp reports
- pmie: fix count_* operators with dynamic instance domains
- pmie: fix fetch logic with dynamic instance domains
- testsuite: ensure pcpqa account creation does not warn
- testsuite: numerous new tests, updates to existing tests
pcp-3.8.12 (29 January 2014)
- Fix recent (3.8.10) regression for certain platforms where
important PMNS files ended up not being installed. Impact
is on new installs only, not upgrades (so my QA missed it).
- pmmgr: add -l (logfile) option to fix a permissions issue.
- pmdalinux: fix sigsegv on certain ICMP procfs file lines.
- Further improvements to pmlogger internal data structures
dealing with configuration files with duplicate metrics
and/or instances - improved in terms of network fetching,
as well as on-disk data layout (all backwards compatible).
- pmdarpm: added cumulative rpm.total.{count,bytes} metrics.
- Add man pages for all of the PMDAs currently missing one.
pcp-3.8.10 (15 January 2014)
- Adds pmmgr(1) PCP daemon manager - a cunning new (opt-in)
approach to managing farms of pmlogger and pmie processes.
- Adds pmfind(1) utility for discovering advertised pmcd
services (initially) on the network.
- Adds a new pmDiscoverServices(3) PMAPI routine.
- Linux pmda: plug memory leak in /proc/interrupts parsing.
- systemd pmda: add sd_journal_process() to avoid inotify()
driven spinning
- Man page rework for some NAME entries, addressing SGI oss
bugzilla #972)
- Add notes for creating user pcp before make from source,
addressing SGI oss bugzilla #1040)
- Improve behavior related to Avahi service name collisions.
- Dodge another hostname-does-not-resolve bullet in pmlogger.
- Fix the configure check for RHEL5 rpmlib for pmdarpm.
- An extensive series of spelling fixes to man pages, thanks
to Michele Baldessari
- Small fixes here and there from Coverity static analysis.
- GFS2 pmda: add the complete set of GFS2 tracepoint metrics.
- RPM pmda: make instance names unique, add rpm.name metric.
- RPM pmda: reduce number of inotify events and rpmdb scans.
- Add some heuristics to reduce metric duplication from tasks
formed via pmlogger configuration file blocks.
pcp-3.8.9 (12 December 2013)
- Fix pmdalinux stack blowout during ioctl() for network
interfaces.
- Add a generic string cache concept for PMDAs to use when
needing to perform string value de-duplication.
- Add a PMDA for the RPM Package Manager exporting package
metadata and state.
- Fix bug in pmlogextract handling time windows and metrics
with dynamic indoms.
- Allow the host part of the host spec to be enclosed with
square brackets - needed for IPv6 addresses in order to
separate the address from the port.
- Fix an Avahi and pmcd conflict when using multiple ports.
- Introduce shared library symbol versioning and hidden
attributes for all PCP libraries.
- Reduce internal API/ABI leakage in libpcp with respect to
endian code, locking code, and derived metrics.
- Bring the Solaris port back up to date with latest source.
- Tag temporary files created by qa tests with test prefix.
- Split PCP_TMP_DIR setting into its two distinct use-cases
removing the need to install world-writable-sticky-bit-set
directories.
- Add /proc/cpuinfo flags and cache_alignement fields (x86).
- Improvements to the hinv.cpu.model metric value we export.
- Ensure pmcpp does not accidentally #include directories.
- Better cleanup of uncompressed temporary files in libpcp.
- Correct pmdasystemd fd_set usage.
- Gracefully handle missing python curses module scenario.
- Improvements to pmstat error handling.
- Update pmcds config file parser - cleaner quotes handling.
- pcp.sh - change formatting for pmie and pmlogger details.
- Unknown Host fixups in libpcp __pmHostEnt code.
- Add a security philosophy section to PCPIntro(1) man page.
- Dodge wchan in Linux proc PMDA if procfs file not found.
- Add network.interface.hw_addr metric (exported from sysfs)
- Remove a nowadays-empty config directory from installation
- Resolve rpm upgrade warning from missing .NeedRebuild file
- Add pmdaproc option to skip access checking, for secure /
isolated environments.
- Make NSS use a stronger default cipher suite.
pcp-3.8.8 (3 November 2013)
- Dodge Debian build issues related to kfreebsd sys/sdt.h.
pcp-3.8.7 (3 November 2013)
- Resolve Debian build issues related to pkg-config/Avahi.
pcp-3.8.6 (1 November 2013)
- Added a new Linux JDB2 PMDA (ext3, ext4, ocfs journals).
- Added Linux kernel PMDA mem.util.directMap1G metric.
- Rework previous fix for Debian kfreebsd port wrt probes.
- Further work on Coverity scan issues, again nothing big.
- Further work on removing the hostname-as-DNS-entity, add
more use of pmGetContextHostName, more default-to-local:
tools.
- Initial support for DNS-SD via Avahi in pmcd for service
discovery.
- Change pcpqa to default to $PCP_VAR_DIR/testsuite as its
home directory.
pcp-3.8.5 (18 October 2013)
- Add jsdemos for the web API into the source tarball.
- Resolve Fedora/EPEL build issue for Infiniband PMDA.
- Resolve Debian build issue for kfreebsd probes.h
- Remove hostname checks in pmie/pmlogger script PID search.
- Much work on QA. Zero test failures on release for RHEL6,
and there was much rejoicing.
- Many Coverity scan issues resolved, nothing major though.
- Ensure MMV PMDA entry exists in default pmcd.conf once more.
- Add Linux disk.partitions metrics to the default logged set.
- New hinv.nlv (logical volume count) metric into Linux PMDA.
- Update pmevent to use local: as the default mechanism.
- Numerous updates to the GFS2 PMDA.
- Reinstate a pmcd sigsegv fix, lost in an earlier merge.
- Fix handling multiple concurrent clients in pmdasystemd.
- Fix memory leak in pmNewContext failure path seen via pmie.
- Make default crontab install cooperate with runlevel settings.
- Add a privacy-protecting pmdasystemd uid/gid-filtering mode.
- Functional network.interface speed/duplex metrics on older
kernels (2.6.32 vintage and earlier, for example).
- Support for IPv6 address and scope metrics (ifconfig-style)
- Numerous updates to the pmatop utility.
- Updates to the PCPIntro(1) manual page.
- Improvements to the Linux per-process metrics values for any
threads being reported.
- Options for restricting Linux pmdaproc to a named cgroup.
- Update pmlogger to default to local: connection mode.
- Allow opt-out with the default-enabled xfs and proc PMDAs.
- Resolve a pmcollectl divide-by-zero (python stack trace).
- Fix recursive expansion of child cgroups in Linux pmdaproc.
- Fix a pmie core dump with archives, interp and mark records.
- Reduce memory footprint of Linux per-process metrics.
- Add proc.psinfo metrics for cgroups and security labels.
- Use local: connection by default in pmatop and pmcollectl.
- Update the python API wrapper to default to local: connection.
- Improvements to pmcollectl host name handling.
- pmGetContextHostName return to static char[] return value.
pcp-3.8.4 (15 September 2013)
- Allow numerous of the pmlogconf/tools templates to be probed
and enabled. These are Linux tools, so we probe for (remote
possibly) Linux hosts only for these.
- Numerous QA test updates, resolving small amounts of fallout
from the previous release reported by Red Hat QE folks.
- Updates to the Samba PMDA.
- Improvements to the Debian build - remove Infiniband deps as
we're not attempting to build that anymore there (evidently,
poor cross platform support? Can revisit if anyone needs it).
- Remove Debian dependence on deprecated sysv rc package.
- Resolve Debian packaging override disparities.
pcp-3.8.3 (9 September 2013)
- Split the XFS and XFS quota metrics into a separate PMDA
- Optional hash-based metric table lookups for PMDAs
- pmdagfs2: updates
- pmlogrewrite: add support for indom replication
- pmatop: Decrease screen real estate used for display.
- Fix the pmdabash shell version support validation code
- Add gluster PMDA into the build, really this time
- Add hinv.nnode metric to pmdalinux, mirroring the IRIX metric
- Add an option allowing custom pmcd.hostname settings
- Implement host access checking for unix domain sockets.
- Man page updates, esp. to pmcd.1 re access controls.
- Add static probe support for pmcd probes (systemtap/dtrace)
- Change pmGetContextHostName to be pmcd.hostname aware and thus
able to report the correct remote hostname through a tunnel.
- Update numerous tools to use pmGetContextHostName now.
- Demonstration programs for the MMV API
- Add pmdasystemd journal event count and total bytes metrics
- Use -fPIC over -fpic, resolving build issues on some platforms.
- Ensure Perl refcount bumped on PMDA.pm pmdacache stored variables
- Fix pmie/pmlogger control scripts - bad pmproxy handling
- Add a mechanism for packaging to avoid chown use, for Debian.
pcp-3.8.2 (31 July 2013)
- Support for the Unix domain socket transport between pmcd
and client tools, using the "unix:" host specifier (and the
more forgiving "local:" which falls back to localhost if no
platform support exists).
- Note: PCP_RUN_DIR is as a result now installed owned by the
"pcp" user and group (rather than as "root"). Several other
directories are also now installed "pcp"-owned too, after
(unrelated) pmie and changes described below.
- Support for automatic extraction of client tool credentials
with Unix domain sockets, and transfer to interested PMDAs,
on Linux, Mac OS X and Solaris. IOWs, PMDAs now know which
user they are acting on behalf of for each connection, when
this class of socket is used. In a future release, it hoped
to make this the default local connection style.
- Extensions to pmdaproc to allow it to perform access-control
checking and metric value fetches as the user requesting the
data, instead of as root, such that kernel-based permission
checking is now performed.
- Re-enabled pmdaproc by default on Linux.
- pmdagfs2: updates to metrics, tests and a new manual page.
- pmdagfs2: fixes for distributions without gfs2 trace-points.
- pmdalinux: fix hinv.map.lvname realink memory corruption bug.
- pmdalinux: fix issue where EPERM passed out as a fetch result
with inaccessible filesystem paths.
- pmdalinux: rework /proc/net/snmp metric extraction, added new
metrics from recent kernels (checksum error counters, icmpmsg).
- Linux PMDA SNMP metric type migration support (log rewriter).
- pmdasystemd: correct .maxmem metric to PM_SPACE_BYTE
- pmdasystemd: limit number of journald entries consumed per poll
- pmdamysql: additional status metrics suitable for pmie rules.
- pmdamysql: correct units and type for active connection count
- MySQL PMDA metric migration support (log rewriting rules).
- pmdagluster: new PMDA exporting gluster filesystem metrics,
in particular fs operation latency and brick throughput data.
- Fixes to the python pmda interface code to allow old python
versions as well.
- Extensions to python pmda interface to allow pmdaCache(3) use.
- pmwebapi: support more general pcp hostname specs, and
HTTP Basic authentication.
- Throttle the size of the pmatop hardware component display.
- Fix pmgui.py on big endian platforms (affects pmcollectl).
- Further progress on the log checking tool, pmlogcheck.
- Generate default pmlogger and pmie daemon configuration files.
- Migrated all static pmlogger configs over to pmlogconf format.
- Added pmlogconf config files for metrics used by iostat, ip,
mpstat, sar, vmstat.
- Install cisco PMDA pmieconf rules into the correct location.
- Install default crontab entries for pmlogger and pmie checking
and daily archive maintenance, on Linux, running as user "pcp"
now (previously, "root").
- pmlogconf scripts: added in automatic NFSv4 logging.
- pmlogger scripts: better locking between check and daily
- pmlogger control: add -r, -T and increase timeouts by default.
- Start a working primary pmlogger with a useful and extensible
set of metrics after enabling the service.
- Start a working pmie with a useful and extensible set of rules
after enabling the service.
- Assigned new PANASAS and NVML PMDA domain numbers.
- pmlogextract: fix minor bug for empty instance domains
- Resolve issue where clients get sigsegv from bad -h options.
- Updated pmwtf man page - better explanation for -q option
- Massive, massive QA efforts, much better support for non-x86.
- iostat2pcp - timestamp rework for European datetime formats.
- Fixed debian bugs related to broken library symlink.
- Ensure permissions on the NOTICES file allow pcp uid/gid access.
- Major updates to the SASL code allowing remote authentication
and improvements to username/password interaction process.
- Fix SASL related memory leaks, sort out authname mapping.
- Ensure SASL errors are easily identifiable as such (pmErrStr_r)
- User and groups access control list support in pmcd, augmenting
the existing host-based access control list support.
- Fix tempfile leak in pmdaproc.sh from accidental $tmp override.
- Improve the PCP experience with older versions of NSS (<=RHEL5)
- Introduce pmcd self-callstack-tracing capability for the Linux,
FreeBSD, and MacOSX platforms (maybe others, via backtrace(3)).
pcp-3.8.1 (19 June 2013)
- Add support for PMDAs written in python via pcp.pmda package.
- Example implementation of pmdasimple using python.
- Added new proc.{memory.vmswap,psinfo.threads} metrics.
- New collectl2pcp utility and sub-package (deb/rpm) for
converting historical data collected with collectl into the
PCP archive format for replay and analysis with PCP tools.
- Add missing help text for some Linux kernel hinv.map metrics
- Added new hinv.map.lvname metric for reverse mapping logical
device mapper names to physical device names.
- Added new hinv.ninterface metric (pmdalinux and collectl2pcp)
- Fixes to pmcollectl handling of PCP logs in archive mode.
- Allow pmcollectl metrics to be sourced from a remote host.
- Additional gfs2 metrics and tests, thanks to Paul Evans from
the gfs2 development team at Red Hat. This makes use of the
gfs2 kernel glock event tracing to track hot locks, and also
provides a storable mechanism for enabling/disabling tracing
on-the-fly.
- Updated access control section of pmcd.1 with IPv6 details.
- Improve archive integrity checking from libpcp_import, ensure
monotonic increasing timestamps presented for single archive.
- Improvements to the log import perl API allowing for batched
updates (out-of-order), thanks to Marko Myllynen.
- Removed a low limit in the libpcp_import auto-PMID generation
scheme, now allowing millions of metrics instead of hundreds.
- Promote pmlogger and pmlogextract into the default PATH, with
backward-compatibility preserving symlinks in PCP_BINADM_DIR.
- Support for IPv6 socket communication in libpcp_pmda for pmcd
PMDA communication.
- Support for IPv6 socket communication testing via dbpmda.
- Update man pages to reflect IPv6 support in libpcp_pmda.
- Other improvements to the socket-based PMDA mechanisms.
- Fix a 64bit big-endian host issue in systemd.maxmem metric
- Mac OS X packaging tweaks.
pcp-3.8.0 (14 May 2013)
- Added the nginx PMDA, thanks to Ryan Doyle.
- Fixed memory leak on an error path in profile PDU decoder.
- Added pmwebd(1) - a JSON-based bridge providing web tools
with access to the PMAPI (both pmcd and archives) via HTTP.
- Initial support for client authentication via opt-in protocol
extensions, host specification extension, communication to
PMDAs via version 6 of the agent interface, dbpmda support.
Uses SASL2 as the underlying technology (which provides for
plugin-based extension to many authentication mechanisms).
- Reworked many aspects of the python APIs - now a pcp package
with sub-modules, improved error handling, and much more.
- Work toward pylint(1)-clean python code throughout PCP.
- Added a new python module for MMV instrumentation.
- Initial work on a python module for writing PMDAs.
- Added a new python module abstracting commonly needed metric
Subsystems, shared by pmatop(1) and pmcollectl(1).
- Added new python client tool - pmatop(1) - implementing much
of the reporting functionality of atop (www.atoptool.nl).
- Additional checks added to metric names allowed into the PCP
Log Import library to match the PMNS man page requirements.
- Support for parallel make invocations.
- Improvements to the secure server code to make it work better
and on more platforms.
- Improvements to the IPv6 and IPv4 access control wildcards.
- Migrate man pages from man4 to man5.
- Resolve Fedora bug where the log import API was found to be
allowing invalid metric names to be created.
pcp-3.7.2 (19 April 2013)
- Improved pmie propagation of metadata units.
- Extra pmlogger diagnostic when log cannot be created.
- Fix Debian python build dependencies.
- Avoid mis-sharing outbound pmcd connections if ports do not
match (libpcp).
- IPv6 presence now checked at run-time as well (pmconfig).
- Packaging updates - tarball, slackware, gentoo.
- Add several missing man page options, typos and such, found
by Red Hat (internal?) checker tools.
- Added pmwtf.1 man page.
- Make pmdaapache observe a connect timeout as well as its
existing request timeout.
- Extend pmcd access control with a global wildcard for IPv6.
- Make __pmSockAddrIsLoopBack handle IPv6 loopback address.
- Resolve bug in too-small pduread recv causing communication
failures with secure sockets, but in theory affecting other
socket transports as well.
- Resolve Debian packaging and build dependency issue.
- Resolve Fedora bug where pmstat fails to start when pmcd has
never been started (so namespace rebuild script not yet run).
pcp-3.7.1 (20 March 2013)
- IPv6 addresses and wild cards for host access control.
- Add packaging scripts to correctly transition active temp
file directories from their old locations.
- Resolve a warning from rpm %pre script on new installs.
- Convert pmhostname(1) to use the newer networking APIs.
- Convert pmproxy(1) to use the newer networking APIs.
- Correct the pmlogger heuristics for determining whether it
is running as a daemon for *both* pmlogger_{daily,check}.
- Add script to handle the tmpdir transition such that folks
with running parfait/mmv-instrumented applications continue
to see data exported, and for correct pmlogger/pmie daemon
tracking across releases.
- Fix "Warning: __pmConnectRestoreFlags: cannot restore flags"
messages when built with secure-sockets option disabled.
pcp-3.7.0 (11 March 2013)
- Added hash table iterator interfaces to libpcp.
- Added PCP_SYSCONF_DIR, migrated daemon configuration there.
- Fix Linux swap metrics problems, thanks to Martins Innus.
- Support for IPv6 and revamped networking (libpcp-internal)
APIs, in particular making proper use of getaddrinfo now.
- Initial version of the NetBSD port
- Secure connections are now available as described here:
performancecopilot.org/pcp-gui.git/man/html/lab.secure.html
- Added a PCP_USER setting for globally changing the default
unprivileged user account used by PCP daemons.
- Resolved Debian packaging issues from previous release to
do with the pcp-python subpackage.
- Improve pmdaapache fetch implementation (reduced overhead)
- Close up a file descriptor leak on a pmdaapache error path,
thanks to Ryan Doyle.
- Added the gfs2 PMDA.
- Added the systemd PMDA.
- Alignment issues on ia64 resolved.
- Create pmlogger and pmie logdirs during install.
- Added -L option to pmconfig(1) for reporting libpcp options.
- Further workarounds for sar/sadf XML exporting problems.
- Updates to MinGW PCP builds for native PCP on Windows.
- Use initgroups() to correctly set up supplementary groups in
PCP daemons that are changing user/group from root/root.
- Fix memory leak on scandir failure in several PMDAs.
- Correctly install the pcp user/group during Mac OS X upgrade
- Allow pmdalogger to be installed on multiple platforms
- Series of updates to pmie to improve action %h, %v and %i
substitutions (amongst other pmie improvements and several
corner-case fixes)
- MySQL PMDA now re-connects after a database server re-start.
- Workaround versioning issues between python and rpmbuild.
- Ensure HZ is initialised in Linux proc PMDA, fixing a small
regression from the earlier proc/linux PMDA split.
- Fix -p option to pcp(1) command reporting pmie instances.
- Add one-line help for the proc metrics that did not have it.
- Change primary pmlogger control from symlink to link.
- Add an interface allowing PMAPI clients to explicitly cleanup
(which allows for improved accuracy in valgrind reporting).
- Fix race conditions in pmie and pmlogger startup scripts.
- Updates to the named (name server) PMDA.
- Change __pmSetProcessIdentity to fail more resoundingly.
- Fix issues with pmdashping timeouts observed on multi-core
x86_64 machines related to signals interacting with pthreads.
- Move debian tmpdir settings to match other distros.
pcp-3.6.10 (19 November 2012)
- Transition daemons to run under an unprivileged account.
- Fixes for security advisory CVE-2012-5530: tmpfile flaws.
- Fix pcp(1) command short-form pmlogger reporting.
- Fix pmdalogger error handling for directory files.
- Fix pmstat handling of odd corner case in CPU metrics.
- Correct the python ctype used for pmAtomValue 32bit ints.
- Add missing RPM spec dependency for python-ctypes.
- Corrections to pmdamysql metrics units.
- Add pmdamysql slave status metrics.
- Improve pmcollectl error messages.
- Parameterize pmcollectl CPU counts in interrupt subsys.
- Fix generic RPM packaging for powerpc builds.
- Fix python API use of reentrant libpcp string routines.
- Python code backporting for RHEL5 in qa and pmcollectl.
- Fix edge cases in capturing interrupt error counts.
pcp-3.6.9 (12 October 2012)
- Python wrapper for the pmimport API
- Make sar2pcp work with the sysstat versions from RHEL5,
RHEL6, and all recent Fedora versions (which is almost
all current versions of sysstat verified).
- Added a number of additional metrics into the importer
for people starting to use it to analyse sar data from
real customer incidents.
- Rework use of C99 "restrict" keyword in pmdalogger
(Debian bug: 689552)
- Alot of work on the PCP QA suite, special thanks to Tomas
Dohnalek for all his efforts there.
- Win32 build updates
- Add "raw" disk active metrics so that existing tools like
iostat can be emulated
- Allow sar2pcp to accept XML input directly (.xml suffix),
allowing it to not have to run on the same platform as the
sadc/sadf that originally generated it.
- Add PMI error codes into the PCP::LogImport perl module.
- Fix a typo in pmiUnits man page synopsis section
- Resolve pmdalinux ordering issue in NUMA/CPU indom setup
(Redhat bug: 858384)
- Remove unused pmcollectl imports (Redhat bug: 863210)
- Allow event traces to be used in libpcp interpolate mode
pcp-3.6.8 (14 September 2012)
- Corrects the disk/partition identification for the MMC
driver, which makes disk indom handling correct on the
Raspberry Pi (http://www.raspberrypi.org/)
- Several minor/basic fixes for pmdaoracle.
- Improve pmcollectl compatibility.
- Make a few clarifications to pmcollectl.1.
- Improve python API test coverage.
- Numerous updates to the test suite in general.
- Allow pmda Install scripts to specify own dso name again.
- Reconcile spec file differences between PCP flavours.
- Fix handling of multiple contexts with a remote namespace.
- Core socket interface abstractions to support NSS (later).
- Fix man page SYNOPSIS section for pmUnpackEventRecords.
- Add --disable-shared build option for static builds.
pcp-3.6.6 (28 August 2012)
- Added the python PMAPI bindings and an initial python client
in pmcollectl. Separate, new package exists for python libs
for those platforms that split out packages (rpm, deb).
- Added a pcp-testsuite package for those platforms that might
want this (rpm, deb again, mainly)
- Re-introduced the pcp/qa subdirectory in pcp and deprecated
the external pcpqa git tree.
- Fix potential buffer overflow in pmlogger host name handling.
- Reworked the configure --prefix handling to be more like the
rest of the open source world.
- Ensure the __pmDecodeText ident parameter is always set
Resolves Red Hat bugzilla bug #841306.
pcp-3.6.5 (16 August 2012)
- Fixes for security advisory CVE-2012-3418
o Add field validation to PCP instance PDU (Red Hat #841240)
o Fix __pmDecodeInstanceReq heap buffer overflow (Red Hat #841284)
o Fix __pmDecodeText heap overflow (Red Hat #841249)
o Multiple issues in result PDU decoding (Red Hat #841159)
o Fix __pmDecodeNameReq buffer overflow (Red Hat #841180)
o Add length checks to __pmDecodeLogControl (Red Hat #841290)
o Add size check to __pmDecodeIDList (Red Hat #841112)
o Fix __pmDecodeNameList buffer overflow (Red Hat #840920)
o Add missing __pmDecodeFetch namelen checks (Red Hat #841183)
o Add length checks to __pmDecodeProfile (Red Hat #841126)
o Add length checks to __pmDecodeCreds (Red Hat #840822)
- Workaround for security advisory CVE-2012-3419
o Split the Linux kernel and proc PMDAs to prevent information
leakage in default installs - esp. /proc/pid/maps exposure,
but other proc metrics as well - and no longer export process
metrics by default (Red Hat #841702)
- Fixes for security advisory CVE-2012-3420
o Memory leak in pmcd DoFetch error path (Red Hat #841298)
o Memory leak in __pmGetPDU in-band signalling (Red Hat #841319)
- Fixes for security advisory CVE-2012-3421
o Resolve event-driven programming flaw in pmcd (Red Hat #841706)
- Correct buffer unpinning logic in a PMNS traversal error path
o Red Hat bugzilla bug #847314.
- All of the above issues were identified by Florian Weimer of the
Red Hat Security Team, who also assisted extensively in fixing
and testing; a huge thank you to Florian from all PCP developers
and users!
- Add modern gcc/glibc security protection mechanisms where
available. Thanks to the Frank Eigler.
- Harden all boundary checking in the remaining PDU decoders.
- Resolve an issue with configure script checking for the init(1)
process on Fedora 17 (and other systems using systemd). Thanks
to Lukas Berk.
- pmdaelasticsearch only reports on nodes in the cluster now,
and not other client nodes. Thanks to Nigel Donaldson.
- Added interfaces to PCP::PMDA Perl module to allow PMDAs to
use a hash instance domain (instead of int/string array).
These make use of the pmdaCacheOp(3) interfaces - the hash
keys are the (external) PCP instance names, and the value
associated with each key is an opaque reference.
- Added an interface to allow PMDAs to register event queues
with existing clients (pmdaEventNewActiveQueue).
- Initial version of the (experimental) bash tracing PMDA.
pcp-3.6.4 (12 June 2012)
- Fix build on s390x platform (thanks to Dan Horak)
- Rethink order of PATH setting for pcp start scripts, to ensure
binaries from other packages with names that conflict with pcp
binaries are not found ahead of the same-named pcp binary.
pcp-3.6.3 (27 April 2012)
- Revert initial attempt at getting configure --prefix option to
make sense for local developer PCP installations
- Fix RPM changelog typo in in-tree spec file
- Further work on Debian/kFreeBSD port (thanks to Robert Millan)
pcp-3.6.2 (18 April 2012)
- Fix Debian builds on FreeBSD (missing header files)
- Resolve Debian startup script (compat) lintian issue
- Resolve FreeBSD kernel PMDA build issue with PCP not installed
in the build root already.
pcp-3.6.1 (12 April 2012)
- Resolve final Mac OS X pthreads build issues
- Debian packaging improvements for split pmlogger/pmcd scripts,
perl module pieces, and other lintian reported issues
- Update the startup script dependencies for /var use
- Support --prefix=... and --exec-prefix=... configure options
- Relaxed the "are you running as root?" test in startup scripts
- Win32 build updates and improvements
- Cache /proc/stat file handle in Linux kernel agent to reduce
syscalls on the most commonly fetched metric subtree
pcp-3.6.0 (21 March 2012)
- Thread-safe libpcp, including additional re-entrant and thread-safe
variants for some routines
- Retire all asynchronous routines from libpcp
- Retire all V1 protocols and services (archive format, PMAPI and
PMDA_INTERFACE)
- PMNS moves to ASCII only (no binary PMNS)
- Rework "init" scripts, splitting pcp into pmcd and pmlogger
- Update elasticsearch PMDA to 0.19+, new transport and shard metrics
- Updates to PMDA new event queueing interfaces for agents wishing to
export that class of performance data.
- First round of Coverity cleanup fixes incorporated.
- Initial version of the SNMP PMDA, thanks to Hamish Coleman.
- Updates to postgres PMDA to export additional recovery metrics.
pcp-3.5.11 (01 December 2011)
- Update FSF contact address in copyright notices to keep
rpmlint happy.
- Fix instance domain checks in elasticsearch PMDA.
- Make KVM PMDA to run as root once more (permissions issues).
- Integration of pmlogger_daily with pmlogrewrite.
- Fix pmlogger_merge corner case for empty archives.
pcp-3.5.10 (04 November 2011)
- Support new 0.18+ elasticsearch metrics.
- Fix handling of elasticsearch version metric cluster.
- Fix trace PMDA build issues.
- Fix some Win32 build issues.
- Run with reduced privileges for more of the perl PMDAs.
- Name Solaris load average metric consistently.
- Small metric documentation tweaks for Solaris PMDA.
pcp-3.5.9 (23 October 2011)
- Add rc script support for condrestart, and condrestart the pcp,
pmie and pmproxy services after an RPM install or upgrade.
- Fix a bug where hinv.ndisk is incorrect if CLUSTER_PARTITIONS
hasn't yet been refreshed immediately following a restart.
- Implementation of client event queueing logic for all PMDAs to
share (all PMDAs wishing to support event metrics, that is).
- New manual pages for new PMDA event queueing interfaces.
- PostgreSQL PMDA, supporting versions 9.0 and 9.1 (at least).
- Reserved ID 111 for Samba Clustered Trivial Database PMDA.
- Add perl interface to allow PMDAs to drop priveleges
- Add an elasticsearch version metric.
- Correct perl module type detection logic for 32/64-bit systems.
- Small pmlogconf source and man page fixes.
- Rework flex usage to resolve build warnings.
- Make Darwin CPU metrics 64 bit.
- Add (long) opaque key support to libpcp_pmda.
- Add pmdaCacheStoreInst() routine to libpcp_pmda.
- Added mssql PMDA for SQL server Dynamic Management View stats.
- Add pmlogrewrite(1) to rewrite archives (fix inconsistencies).
- Fix a cgroup option parsing error on consecutive fetch calls.
pcp-3.5.8 (08 August 2011)
- Rework rsyslog PMDA to remove Switch use, very odd behaviour
observed on RHEL5.2 (mysteriously failing to compile).
- Add in Kens scripting defenses against dodgey toolchains.
pcp-3.5.7 (05 August 2011)
- Fix build issue on SLES11 SP1 IA64 systems.
- Improved rsyslog PMDA handling of queue metrics.
- Add open file-descriptor count metric to the Linux PMDA.
- Implement logger PMDA line-oriented event mode.
- Add regular expression based event filtering in logger PMDA.
- The default pmcd.conf now has an access control section, and
all remote store operations are blocked by default.
- Improve packaging of Perl components.
pcp-3.5.6 (21 July 2011)
- Fix warning from pmie_daily with some /bin/pwd versions.
- Numerous Debian packaging updates for lintian cleanliness.
- Fixed typos in several man pages.
- Added ElasticSearch PMDA.
- Fix build on RHEL4 with older sys/queue.h variant.
pcp-3.5.5 (6 July 2011)
- Resolve Debian packaging issues preventing new uploads.
- Fix warnings from pmie_check with some /bin/pwd versions.
pcp-3.5.4 (6 July 2011)
- Fix warnings from pmlogger_check with some /bin/pwd versions.
pcp-3.5.3 (6 July 2011)
- Remove reliance on a cpp binary being installed locally with
new pmcpp applicaton.
- Ensure compressed pmie log files are also cleaned up daily.
- Extend the event store mechanism to be more generally useful.
- Add memory limiting functionality to pmdalogger.
- Add SQLServer metric for user settable queries.
- Fix potential sigsegv in pmprobe fetching multiple live values.
- Perl changes for Solaris.
- Fix Fedora15 build relating to handling of systemd.
- Solaris pmda zpool_vdev_name() api change.
- Update sar2pcp for sysstat version 9.1.7.
- Resolve realloc issue in event metric handling in libpcp_pmda.
pcp-3.5.2 (3 June 2011)
- pmlogreduce - fix 2 problems (memory leak, additional mark records)
- Initial version of pmdalogger, from David Smith, a log monitoring
PMDA exporting event metrics.
- Make Windows drive instance domain code less chatty.
- RC scripts and pmie_check - Mac OS X porting
- pmlogger_check - symbolic link issue fixed
- Add in the rsyslog PMDA (http://www.rsyslog.com)
- Extend PCP::PMDA so that the log tail mode can be used on named papes.
- Numerous updates to the Perl packaging infrastructure
- Fix build when $HOME is not set.
- pmlogconf - another non-posix awk issue fixed
- Darwin pmda - filesys.maxfiles metric
- pmie_daily - assorted minor fixups
- Unix domain socket issue found on Mac OS X
- pmcd config parsing error handling cleanup
- Quieten pmevent output in the absence of new events.
- Pass process ID out on success of __pmProcessCreate.
- pmdaproc.sh - add PMDA_INTERFACE_5 support
- pcp_completion.sh - add pmevent for bash metic completion
- pmevent - add instance domain support
- Bugfix: fetching hinv.cpu.* aborts if cpu indom is not initialized
- Rearrange the per-CPU intr metrics on Linux to use dynamic namespace
- Add perl modules into Mac OS X installations
- Additional vmstat metrics added to Linux kernel PMDA
- Fix pmieconf after syscall metrics went away on Linux
- pmevent - new util to report event records, with instance domain support
- sample PMDA - instance domain for event records metric
- pmval, pminfo - man page typo corrections
- pmval - fix typo in error message
- pmlogextract, pmlogreduce - auto volume switch at 2^31 bytes
- pmnscomp - defaults to Version 2 of the compiled PMNS
- Remove unconditional diagnostic in MMV agent, log spam
- Rework the code that uncompresses archives for Win32
- Updates to Win32 makefiles to get a clean package build
- Enable compressed log processing for Windows as well
- Sample event consumer code for Windows ETW
- Update PDH Win32 headers to use those from current mingw-m64 tree
- Win32 socket error messages are reporting correctly
- Great strides in getting error reporting correct on Windows
- Add Win32 pthread wrapper for threading work on Windows
- Add PowerDNS recursor stats to the pdns PMDA
pcp-3.5.0 (31 January 2011)
- Infrastucture support for doing distributed event tracing with PCP.
This includes a new metric type (PM_TYPE_EVENT), cunning mechanisms
for encoding event records in pmResults, and providing PMDAs with
per-client context connection information allowing agents to track
which clients have seen which parts of a trace stream so far. Some
reference uses of these extensions can be seen in pmdasample and in
the pmcd PMDA as well.
- Transparent support for archive de-compression by clients.
- Manual page formatting errors corrected.
- Fix a pmDupContext memory corruption issue seen with derived metrics.
- Added a one-trip optimisation/guard to pcp.env
- Improved pmdaFetch and pmdaFetchCallback man pages with respect to
return codes and value memory allocation models.
- Fix for Windows unintentionally allowing multiple pmcd processes
to startup and bind to the same port, with "undefined" results.
- Fix Windows services interaction, preventing pmcd service stop.
- Fix Mac OS X scandir memory leak on empty directories.
- Fix Mac OS X mem.util.wired metric, was exporting the wrong value.
- Correct the handling of SLES11 distro identification (lsb-release
file not used again, on SuSE Linux distributions).
- Fix postfix PMDA log file path handling for Redhat Linux distros.
- Extend Perl PMDA interfaces to allow additional metrics to be
added at runtime (now makes use of dynamic namespace support).
- Set KEEPALIVE option on pmproxy client sockets, mirroring pmcd
behaviour and reducing open file descriptor pressure.
- Improvements to the native Windows version of pmlogger, preventing
it from exiting prematurely thanks to a socket read race condition.
- Fix /proc/interrupts parser in Linux PMDA, thanks to Arthur Kepner.
pcp-3.4.1 (9 October 2010)
- Remove bogus (expected) errors/warnings from Win32 install/remove.
- Remove couple of no longer needed local Win32 API wrappers.
- Fix rindex code for Win32 so it handles empty strings.
pcp-3.4.0 (29 September 2010)
- Add new libpcp_import C API library to pcp-libs.
- Add perl-PCP-LogImport RPM sub-package for libpcp_import perl binding.
- Add pcp-import-* RPM sub-packages containing front-end tools for
importing data from sar, iostat, generic speadsheets and mrtg.