Commit Graph

1019 Commits (6c35887d024f4257ed09809d3bab3f2fc50fe14f)
 

Author SHA1 Message Date
shirou 53c0262e32 Merge pull request #310 from sparrc/go-fmt
run go fmt ./...
shirou 1495f0bf31 Merge pull request #309 from sean-/process-no-cgo
Add native struct support for FreeBSD/arm.
Cameron Sparr 0c9a1d33cb
fix panic when /proc/stat is empty
don't really know why this would be the case, but I suppose there are
always edge-cases.

see https://github.com/influxdata/telegraf/issues/2356
Cameron Sparr a213bf5e6d
run go fmt ./...
Sean Chittenden b68f0fdb25
Add native struct support for FreeBSD/arm.
This was ported by hand and not machine generated, but appears to get
software to build.  Material was sourced from the following and a pile
of `grep(1)`:

[1] https://wiki.freebsd.org/EdMaste/ArchitectureSpecifics
[2] https://svnweb.freebsd.org/base/head/sys/sys/user.h?revision=309676&view=markup#l119
shirou 3b18639664 Merge pull request #308 from sean-/host-no-cgo
Add Go-native structs for Darwin/386 and FreeBSD/arm
Sean Chittenden 955821b5ab
Add Go-native structs for Darwin/386 and FreeBSD/arm
shirou 70a1b78fe6 Merge pull request #307 from shirou/freebsd_cpu_cores_num
[cpu]freebsd: cpu.Info() now returns CPUInfos same number as CPU nums.
WAKAYAMA shirou dc8102185d separate freebsd specific test code.
WAKAYAMA shirou a54f700f00 fix test other than freebsd.
WAKAYAMA shirou eb5bfca902 [cpu]freebsd: cpu.Info() now returns CPUInfos same number as CPU nums.
shirou d28b003411 Merge pull request #305 from tychoish/platform-0
add platform compatibility #297
Sam Kleinman 488c56586b add platform compatibility
WAKAYAMA shirou 7783018b9d [cpu]freebsd: CPU.CPU now indicates CPU num instead of MHz.
WAKAYAMA Shirou 1123132e5a [mem]darwin: swap memory was Kbytes, since linux is bytes.
shirou 26dae1bdee Merge pull request #303 from jcaberio/master
fix truncated process name of linux
Jorick Caberio c432d48337 fix truncated process name of linux
shirou 80a8502305 Merge pull request #296 from smith3v/master
Implemented resource limits function
Vyacheslav Kuznetsov a35c32b028 Commented the constants origin.
Vyacheslav Kuznetsov 4de4e17f06 Added limit constants. Implemented function to parse process limits from /proc.
shirou 93564b3142 Merge pull request #271 from botherder/master
Obtain executable path from macOS process (fix #270)
shirou aa5843400e Merge pull request #293 from HeChuanXUPT/patch-1
fix: division by zero possible
HeChuan c73b6685be fix: division by zero possible
some filesystem have zero Inode
shirou a0f760ef63 Merge pull request #291 from hush-hush/master
Add 'SwapCached' to the VirtualMemoryStat informations on linux
Maxime Mouial 4a1d5da977 Add 'SwapCached' to the VirtualMemoryStat informations on linux
shirou bc9d8fac2b Merge pull request #290 from DataDog/conor/connections-perf
Fast duplication check in inodes processing.
shirou a2257218e1 Merge pull request #289 from DataDog/conor/cache-boot-time
Cache the boot time after first query.
Conor Branagan 276c873f0d Fast duplication check in inodes processing.
Instead of encoding a JSON string of each connection (non-trivial at high
connection volumes) we can use the connTmp struct for map look-ups if we
eliminate the unused `uids` field.

Also switches to using the empty struct instead of bool for zero memory
overhead.
WAKAYAMA Shirou 42156fdf0d [net]linux: fix NetFilterCounters filename
shirou 09887d1cba Merge pull request #287 from hush-hush/master
Add Slab, Shared and PageTables metric for VirtualMemory under linux
Maxime Mouial 44e27c6972 Add Slab, Shared and PageTables metric for VirtualMemory under linux
shirou c42889c313 Merge pull request #268 from DataDog/conor/connections-max
Add ConnectionsMax function that limits connections per pid.
Conor Branagan df61ef6d5f Add stub functions for ConnectionsMax in other OS versions.
Conor Branagan 198e65c801 Add ConnectionsMax function that limits connections per pid.
The goal is to improve performance of connection fetching connections across
all processes when some processes can have several hundred or thousands of file
descriptors. Right now when you have many thousands of fds the process spends
lots of time inside the syscalls from Readdir and Readlink.

The public API works as before with two new functions:

- `ConnectionsMax`
- `ConnectionsPidMax`

Each function takes an additional int argument that sets the max number of fds
read per process.
shirou 449c8250b0 Merge pull request #285 from sparrc/patch-1
Fix /proc/net/dev dropOut and fifoOut indices
Cameron Sparr d74d84e593 Fix /proc/net/dev dropOut and fifoOut indices
fixes #284
Shirou WAKAYAMA 061b699a97 Add OpenBSD to README (Thank you @mpfz0r)
shirou 136f6ca669 Merge pull request #283 from mpfz0r/master
Add support for OpenBSD/amd64
Marco Pfatschbacher b4846b445b Add support for OpenBSD/amd64
This code is based on the FreeBSD version
and implements roughly the same feature set.
shirou 110eb1f082 Merge pull request #280 from shirou/darwin-goslices
cpu[darwin]: fix Go arrays panic in cgo #279
Shirou WAKAYAMA ae251eb6a2 cpu[darwin]: fix Go arrays panic in cgo #279
Shirou WAKAYAMA a63900a44b update README about taging.
shirou 1516eb9ddc Merge pull request #275 from sparrc/sparrc-issue-245
Fix NetIOCounter windows interface behavior
Cameron Sparr 5af5f08785 Fix NetIOCounter windows interface behavior
addresses a few things:

- Windows has a concept of both a network "interface" and an "adapter"
- These are almost always a one-to-one relationship, though there can be
esoteric instances where they are not.
- I believe the gopsutil NetIOCounters function should only return on a
per-interface level, since this is the behavior on linux/darwin.

Previously, the plugin was basically ignoring the actual interfaces
returned from net.Interfaces(). Instead, it was looping over the net
adapters for each interface, somewhat uselessly.

FWIW, the code for getAdapterList() doesn't exist in the Go standard lib
anymore.

closes #245
shirou 6f43e5d707 Merge pull request #274 from leitao/master
Improve CPU identification for POWER processors
Breno Leitao 286927a039 Improve CPU identification for POWER processors
Currently gopsutils fails to indentify the POWER processors family,
returning an almost empty Info() structure.

This patch improves the POWER identification without changing what is
available for x86.
Nex 189b8e6d12 Fixed missing bin and unused stderr
Nex b6a7649aab Error handling
Nex 5c0ac28fed Changing a little the return values
Nex d9b355f75e Added proper piping of commands