Commit Graph

225 Commits (e146c2e08a4527e58c240fb43f9184bb63d17bc8)

Author SHA1 Message Date
shirou 27389f01ec
Merge pull request #459 from shirou/feature/implements_process_kill_on_windows
[process]windows: implements process.Kill using os/exec
7 years ago
leaf 65598d98cc To prevent hang if wmi.Query hangs, add a context-aware wrapper for it. 7 years ago
WAKAYAMA shirou f5e19d7e16 [process]windows: implements process.Kill using os/exec 7 years ago
Lomanic 00bdebfce7 Use getFromSnapProcess to get process Name and Ppid on Windows instead of slow WMI 7 years ago
Lomanic da12f10f63 Use w32.EnumerateProcesses instead of slower wmi in windows process.Processes() 7 years ago
Lomanic c9a24cf2d0 Handle case in Windows process.Pids() where buffer is too small to handle that many processes returned by w32.EnumProcesses 7 years ago
Lomanic 0314bc81f3 Use w32.EnumProcesses to get pids on Windows in process.Pids() 7 years ago
Sam Kleinman 4d92a03da8 fix cross compiles 7 years ago
tycho garen 08a382b207 make process.processes function public 7 years ago
mlkm b9ab45bcdd Implement Process.Times for Windows 8 years ago
John Liu d28c254aaf Improve performance of finding child processes on Windows 8 years ago
shirou fa0e9fd921 Merge pull request #428 from Leonid99/threads
Implement Threads() in Linux
8 years ago
Leonid Podolny 4269f19b1b process.go: reformat whitespaces to keep gofmt happy 8 years ago
Leonid Podolny 7ee4a4c6ff Fix Threads() signature to better match python original 8 years ago
Leonid Podolny 7ad3836ad3 Implement Threads() for Linux 8 years ago
Kemal Hadimli 826e63acbc Never divide by zero 8 years ago
Kemal Hadimli a3144a6850 Remove parens 8 years ago
Kemal Hadimli 696e1e0123 Fix NaN percentage if process was created too soon 8 years ago
shirou a452de7c73 Merge pull request #346 from phemmer/rlimit-current
add current values to rlimit retrieval
8 years ago
Shirou WAKAYAMA 3aa2ffab12 [process] linux: fix NumFD type inconversion. 8 years ago
Conor Branagan 7b058c7436 Just look at filenames for linux NumFDs call.
In NumFDs we don't care about the contents of the fields, just how many
there are.
8 years ago
WAKAYAMA Shirou 906b00fc23 add features to README. Thank you for all of great contributors! 8 years ago
shirou f6b70e303c Merge pull request #387 from tychoish/windows-data-collection
collect more data on windows
8 years ago
WAKAYAMA Shirou 5329f8ba79 [process] fix Document of CreatTime seconds -> milliseconds 8 years ago
shirou 1da5000996 Merge pull request #402 from chrisroberts/fix-exe-macos
Fix process.Exe() on macOS 10.12
8 years ago
Aditya Choudhary (c) 533161c2ed added funtion for calculation of CPU usage percentage of a process 8 years ago
Chris Roberts 9c998f664a Fix process.Exe() on macOS 10.12
The `lsof` command on macOS < 10.12 always selects the `p` field
when using the `-F` option. On macOS 10.12 the `f` field is also
always selected causing an incorrect result. This modification adds
both options which are always selected to maintain consistency.
8 years ago
Derek Brown a3ae2ed411 Add domain to username (rather than naked username) 8 years ago
tycho garen d522bf5b7e collect more data on windows 8 years ago
Derek Brown 5157f03748 [windows] add implementation for process.Username() 8 years ago
Sean Chittenden cb12fba4f4
windows.Syscall doesn't exist: use syscall.Syscall() 8 years ago
Sean Chittenden 3e79194fe2
windows.EINVAL doesn't exist, only syscall.EINVAL. 8 years ago
Sean Chittenden 635b971c0e
Move from the `syscall` package to the `golang.org/x/sys/{unix,windows}` 8 years ago
Patrick Hemmer 60c32eb847 add current values to rlimit retrieval 8 years ago
Sean Chittenden d0e40ff723
Fix issues reported by golint. 8 years ago
Sean Chittenden 3834908232
Improve Command() handling and signal handling for launched processes. 8 years ago
WAKAYAMA Shirou 30ebb9ca3a rename expected dir to testdata. 8 years ago
tycho garen 22c56d292e close open files 8 years ago
shirou 35c783ec7d Merge pull request #314 from tychoish/fix-ppid-darwin
error earlier on darwin for get parent pid
8 years ago
tycho garen 6110db7ab5 error earlier on darwin for get parent pid 8 years ago
shirou 53c0262e32 Merge pull request #310 from sparrc/go-fmt
run go fmt ./...
8 years ago
Cameron Sparr a213bf5e6d
run go fmt ./... 8 years ago
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
8 years ago
Sam Kleinman 488c56586b add platform compatibility 8 years ago
Jorick Caberio c432d48337 fix truncated process name of linux 8 years ago
Vyacheslav Kuznetsov a35c32b028 Commented the constants origin. 8 years ago
Vyacheslav Kuznetsov 4de4e17f06 Added limit constants. Implemented function to parse process limits from /proc. 8 years ago
shirou 93564b3142 Merge pull request #271 from botherder/master
Obtain executable path from macOS process (fix #270)
8 years ago
Marco Pfatschbacher b4846b445b Add support for OpenBSD/amd64
This code is based on the FreeBSD version
and implements roughly the same feature set.
8 years ago
Nex 189b8e6d12 Fixed missing bin and unused stderr 9 years ago
Nex b6a7649aab Error handling 9 years ago
Nex d9b355f75e Added proper piping of commands 9 years ago
Nex dd3cbcc611 Trying remove single quotes 9 years ago
Nex 1534b109ae Fixing pid name 9 years ago
Nex 8c3e7bd255 Casting pid properly 9 years ago
Nex 9659355f49 Checking content 9 years ago
Nex 8bb06aca3d Fixed type casting 9 years ago
Nex 5481d93989 Fixing assignment of vars 9 years ago
Nex 4f7834af25 Added attempt to get exe path from pid 9 years ago
Nex d44bd00182 Added Terminate() for Windows 9 years ago
Thomas Hipp 68ad8d603c
process: make `ClockTicks` arch-independent
The value for `ClockTicks` is defined as `100` by the Linux kernel for
all currently supported architectures in Go. Therefore, there is no need
to define this constant for each architecture separately.

This fixes #260.

Signed-off-by: Thomas Hipp <thomashipp@gmail.com>
9 years ago
Thomas Hipp eb4a57117f
process: determine page sizes via function
Instead of hard-coding the page size for linux systems, use Go's
`Getpagesize` function.

This resolves #258.

Signed-off-by: Thomas Hipp <thipp@suse.de>
9 years ago
shirou 79184fee44 Merge pull request #251 from theothertomelliott/master
Correctly handle long running processes on OSX
9 years ago
shirou a8e24d70f9 Merge pull request #247 from lfittl/fallback-for-unsupported-architectures
Add fallback code for all unsupported operating systems
9 years ago
Tom Elliott 1435987652 Correctly handle long running processes on OSX
The full etime format is dd-hh:mm:ss. Replacing '-' with ':' fixes parsing of this format.
9 years ago
Lukas Fittl da9fa1162b Add fallback code for all unsupported operating systems.
This enables using gopsutil in a codebase that gets built on other OSes
than the ones supported. Instead of a build failure as before, due to
the build tags, gopsutil will now throw an "not implemented" runtime
error.

Fixes #234.
9 years ago
Tom Elliott 3855e7ba0e Implement CreateTime for darwin. Parses elapsed time and converts this to epoch time. 9 years ago
Nick Cabatoff 28640e5d73 fix incorrect names for fields in proc/pid/io 9 years ago
Diptanu Choudhury af4c8608c9 Casting the values of working set and page file to uint64 9 years ago
Shirou WAKAYAMA c916da2502 [process]linux: add linux_arm64.go explicitly 9 years ago
shirou 6e9b0bbb1b Merge pull request #197 from shirou/process/add_memory_windows
Process/add memory windows
9 years ago
Shirou WAKAYAMA 1d461a68b6 [process]linux: porcess was not started. 9 years ago
Shirou WAKAYAMA 57f6aebc7e add Timeout to invoke command and use common.Invoke refs: #201 9 years ago
WAKAYAMA Shirou ba34a3af8c [process]windows: add IO counters and fix CreateTime 9 years ago
WAKAYAMA Shirou 903277ce2f [process]windows: implement process.MemoryInfo (but no swap) 9 years ago
WAKAYAMA shirou a9040e612c [process]freebsd: update 386. 9 years ago
Shirou WAKAYAMA 9ef341037b [process]posix: update process signal document 9 years ago
Shirou WAKAYAMA 860f5a0803 [process]linux: update comment to show godoc.org. 9 years ago
Shirou WAKAYAMA bd1b04fe67 [process]linux: add document to Status. 9 years ago
Shannon Wynter f99d495462 Run goimports before committing... 9 years ago
Shannon Wynter a4387d0c92 emulate original behaviour 9 years ago
Shannon Wynter c903f14189 Remove the requirement to use lsof by using the information provided in status to get the parent pid 9 years ago
Shirou WAKAYAMA bce9212def fix build bugs. 9 years ago
Shirou WAKAYAMA d21ed2b40d search path via exec.LookPath before actual invoke. 9 years ago
Shirou WAKAYAMA 613a8a90e1 fixed by golint. 9 years ago
Shirou WAKAYAMA 944429d994 fixed by errcheck 9 years ago
Shirou WAKAYAMA da89408631 Merge branch 'master' into v2 9 years ago
WAKAYAMA shirou 37d8908841 [process]freebsd: implementes proceess.Nice() 9 years ago
WAKAYAMA shirou 37b6b4051f [process]freebsd: process_freebsd_amd64.go is now generated by cgo godefs. 9 years ago
Shirou WAKAYAMA 15a7edb712 [process]linux: linux process status change to "R" not "Running" see #173 9 years ago
Shirou WAKAYAMA 4bb84648bf JSON representation is renamed to fit Google JSON style, camelCase. 9 years ago
Shirou WAKAYAMA 46ddd57c72 process has NetIOCounters and IOCounters. 9 years ago
Shirou WAKAYAMA ea152ea901 [BREAKING CHANGE] rename functions to pass golint. ex) net.NetIOCounters -> net.IOCounters 9 years ago
Shirou WAKAYAMA 627d2a9871 [process]: fix CPU_Percent always 0 if duration > 0 (#172) 9 years ago
Shirou WAKAYAMA 715c421b57 [process]: add OpenFiles() test. 9 years ago
raviparimi be2dab5a40 Provide correct length for slice creation.
- Creating a slice of length numFDs and later appending elements to it
  results in a slice whose first numFDs elements are all nil. It is
  sufficient to create a slice of zero length since we are appending
  elements to it.
- The current allocation will make ret a slice of length 0. What's
  needed is a slice of length len(ofs).
9 years ago
Alexander Inozemtsev f4902fae49 Properly close opened file 9 years ago
Shirou WAKAYAMA 1de1357e77 [process]: add FailNow to avoid panic. 9 years ago
shirou 1ab11f7afd Merge pull request #167 from cgilling/cmdline_slice
process: add CmdlineSlice function for linux + freebsd
9 years ago
Chris Gilling 8c186ae593 process: add CmdlineSlice for darwin + windows
darwin will not perform correctly if there are spaces in the actual
arguments, in which case a single argument will be reported as
multple. Some CGO would be needed to get around this I think.

I couldn't find any good documentation on how windows handles
command line arguments with spaces inside the actual arguments, so
this implementation merely just splits on spaces.
9 years ago