mirror of
https://github.com/prometheus/node_exporter.git
synced 2025-02-02 08:42:31 -08:00
Merge pull request #843 from prometheus/grobie/vendor-ttar
Update vendored procfs packages and tools
This commit is contained in:
commit
a8fc71334b
133
ttar
133
ttar
|
@ -1,11 +1,26 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# Purpose: plain text tar format
|
# Purpose: plain text tar format
|
||||||
# Limitations: - only suitable for text files, directories, and symlinks
|
# Limitations: - only suitable for text files, directories, and symlinks
|
||||||
# - stores only filename, content, and mode
|
# - stores only filename, content, and mode
|
||||||
# - not designed for untrusted input
|
# - not designed for untrusted input
|
||||||
|
#
|
||||||
# Note: must work with bash version 3.2 (macOS)
|
# Note: must work with bash version 3.2 (macOS)
|
||||||
|
|
||||||
|
# Copyright 2017 Roger Luethi
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
set -o errexit -o nounset
|
set -o errexit -o nounset
|
||||||
|
|
||||||
# Sanitize environment (for instance, standard sorting of glob matches)
|
# Sanitize environment (for instance, standard sorting of glob matches)
|
||||||
|
@ -13,7 +28,55 @@ export LC_ALL=C
|
||||||
|
|
||||||
path=""
|
path=""
|
||||||
CMD=""
|
CMD=""
|
||||||
ARG_STRING="$@"
|
ARG_STRING="$*"
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# Not all sed implementations can work on null bytes. In order to make ttar
|
||||||
|
# work out of the box on macOS, use Python as a stream editor.
|
||||||
|
|
||||||
|
USE_PYTHON=0
|
||||||
|
|
||||||
|
PYTHON_CREATE_FILTER=$(cat << 'PCF'
|
||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
for line in sys.stdin:
|
||||||
|
line = re.sub(r'EOF', r'\EOF', line)
|
||||||
|
line = re.sub(r'NULLBYTE', r'\NULLBYTE', line)
|
||||||
|
line = re.sub('\x00', r'NULLBYTE', line)
|
||||||
|
sys.stdout.write(line)
|
||||||
|
PCF
|
||||||
|
)
|
||||||
|
|
||||||
|
PYTHON_EXTRACT_FILTER=$(cat << 'PEF'
|
||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
for line in sys.stdin:
|
||||||
|
line = re.sub(r'(?<!\\)NULLBYTE', '\x00', line)
|
||||||
|
line = re.sub(r'\\NULLBYTE', 'NULLBYTE', line)
|
||||||
|
line = re.sub(r'([^\\])EOF', r'\1', line)
|
||||||
|
line = re.sub(r'\\EOF', 'EOF', line)
|
||||||
|
sys.stdout.write(line)
|
||||||
|
PEF
|
||||||
|
)
|
||||||
|
|
||||||
|
function test_environment {
|
||||||
|
if [[ "$(echo "a" | sed 's/a/\x0/' | wc -c)" -ne 2 ]]; then
|
||||||
|
echo "WARNING sed unable to handle null bytes, using Python (slow)."
|
||||||
|
if ! which python >/dev/null; then
|
||||||
|
echo "ERROR Python not found. Aborting."
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
USE_PYTHON=1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
|
||||||
function usage {
|
function usage {
|
||||||
bname=$(basename "$0")
|
bname=$(basename "$0")
|
||||||
|
@ -24,6 +87,7 @@ Usage: $bname [-C <DIR>] -c -f <ARCHIVE> <FILE...> (create archive)
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-C <DIR> (change directory)
|
-C <DIR> (change directory)
|
||||||
|
-v (verbose)
|
||||||
|
|
||||||
Example: Change to sysfs directory, create ttar file from fixtures directory
|
Example: Change to sysfs directory, create ttar file from fixtures directory
|
||||||
$bname -C sysfs -c -f sysfs/fixtures.ttar fixtures/
|
$bname -C sysfs -c -f sysfs/fixtures.ttar fixtures/
|
||||||
|
@ -46,6 +110,8 @@ function set_cmd {
|
||||||
CMD=$1
|
CMD=$1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unset VERBOSE
|
||||||
|
|
||||||
while getopts :cf:htxvC: opt; do
|
while getopts :cf:htxvC: opt; do
|
||||||
case $opt in
|
case $opt in
|
||||||
c)
|
c)
|
||||||
|
@ -143,8 +209,37 @@ function extract {
|
||||||
fi
|
fi
|
||||||
while IFS= read -r line; do
|
while IFS= read -r line; do
|
||||||
line_no=$(( line_no + 1 ))
|
line_no=$(( line_no + 1 ))
|
||||||
|
local eof_without_newline
|
||||||
if [ "$size" -gt 0 ]; then
|
if [ "$size" -gt 0 ]; then
|
||||||
echo "$line" >> "$path"
|
if [[ "$line" =~ [^\\]EOF ]]; then
|
||||||
|
# An EOF not preceeded by a backslash indicates that the line
|
||||||
|
# does not end with a newline
|
||||||
|
eof_without_newline=1
|
||||||
|
else
|
||||||
|
eof_without_newline=0
|
||||||
|
fi
|
||||||
|
# Replace NULLBYTE with null byte if at beginning of line
|
||||||
|
# Replace NULLBYTE with null byte unless preceeded by backslash
|
||||||
|
# Remove one backslash in front of NULLBYTE (if any)
|
||||||
|
# Remove EOF unless preceeded by backslash
|
||||||
|
# Remove one backslash in front of EOF
|
||||||
|
if [ $USE_PYTHON -eq 1 ]; then
|
||||||
|
echo -n "$line" | python -c "$PYTHON_EXTRACT_FILTER" >> "$path"
|
||||||
|
else
|
||||||
|
# The repeated pattern makes up for sed's lack of negative
|
||||||
|
# lookbehind assertions (for consecutive null bytes).
|
||||||
|
echo -n "$line" | \
|
||||||
|
sed -e 's/^NULLBYTE/\x0/g;
|
||||||
|
s/\([^\\]\)NULLBYTE/\1\x0/g;
|
||||||
|
s/\([^\\]\)NULLBYTE/\1\x0/g;
|
||||||
|
s/\\NULLBYTE/NULLBYTE/g;
|
||||||
|
s/\([^\\]\)EOF/\1/g;
|
||||||
|
s/\\EOF/EOF/g;
|
||||||
|
' >> "$path"
|
||||||
|
fi
|
||||||
|
if [[ "$eof_without_newline" -eq 0 ]]; then
|
||||||
|
echo >> "$path"
|
||||||
|
fi
|
||||||
size=$(( size - 1 ))
|
size=$(( size - 1 ))
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
|
@ -188,11 +283,14 @@ function get_mode {
|
||||||
local mfile=$1
|
local mfile=$1
|
||||||
if [ -z "${STAT_OPTION:-}" ]; then
|
if [ -z "${STAT_OPTION:-}" ]; then
|
||||||
if stat -c '%a' "$mfile" >/dev/null 2>&1; then
|
if stat -c '%a' "$mfile" >/dev/null 2>&1; then
|
||||||
|
# GNU stat
|
||||||
STAT_OPTION='-c'
|
STAT_OPTION='-c'
|
||||||
STAT_FORMAT='%a'
|
STAT_FORMAT='%a'
|
||||||
else
|
else
|
||||||
|
# BSD stat
|
||||||
STAT_OPTION='-f'
|
STAT_OPTION='-f'
|
||||||
STAT_FORMAT='%A'
|
# Octal output, user/group/other (omit file type, sticky bit)
|
||||||
|
STAT_FORMAT='%OLp'
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
stat "${STAT_OPTION}" "${STAT_FORMAT}" "$mfile"
|
stat "${STAT_OPTION}" "${STAT_FORMAT}" "$mfile"
|
||||||
|
@ -201,6 +299,7 @@ function get_mode {
|
||||||
function _create {
|
function _create {
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
local mode
|
local mode
|
||||||
|
local eof_without_newline
|
||||||
while (( "$#" )); do
|
while (( "$#" )); do
|
||||||
file=$1
|
file=$1
|
||||||
if [ -L "$file" ]; then
|
if [ -L "$file" ]; then
|
||||||
|
@ -224,8 +323,30 @@ function _create {
|
||||||
elif [ -f "$file" ]; then
|
elif [ -f "$file" ]; then
|
||||||
echo "Path: $file"
|
echo "Path: $file"
|
||||||
lines=$(wc -l "$file"|awk '{print $1}')
|
lines=$(wc -l "$file"|awk '{print $1}')
|
||||||
|
eof_without_newline=0
|
||||||
|
if [[ "$(wc -c "$file"|awk '{print $1}')" -gt 0 ]] && \
|
||||||
|
[[ "$(tail -c 1 "$file" | wc -l)" -eq 0 ]]; then
|
||||||
|
eof_without_newline=1
|
||||||
|
lines=$((lines+1))
|
||||||
|
fi
|
||||||
echo "Lines: $lines"
|
echo "Lines: $lines"
|
||||||
cat "$file"
|
# Add backslash in front of EOF
|
||||||
|
# Add backslash in front of NULLBYTE
|
||||||
|
# Replace null byte with NULLBYTE
|
||||||
|
if [ $USE_PYTHON -eq 1 ]; then
|
||||||
|
< "$file" python -c "$PYTHON_CREATE_FILTER"
|
||||||
|
else
|
||||||
|
< "$file" \
|
||||||
|
sed 's/EOF/\\EOF/g;
|
||||||
|
s/NULLBYTE/\\NULLBYTE/g;
|
||||||
|
s/\x0/NULLBYTE/g;
|
||||||
|
'
|
||||||
|
fi
|
||||||
|
if [[ "$eof_without_newline" -eq 1 ]]; then
|
||||||
|
# Finish line with EOF to indicate that the original line did
|
||||||
|
# not end with a linefeed
|
||||||
|
echo "EOF"
|
||||||
|
fi
|
||||||
mode=$(get_mode "$file")
|
mode=$(get_mode "$file")
|
||||||
echo "Mode: $mode"
|
echo "Mode: $mode"
|
||||||
vecho "$mode $file"
|
vecho "$mode $file"
|
||||||
|
@ -254,6 +375,8 @@ function create {
|
||||||
_create "$@"
|
_create "$@"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test_environment
|
||||||
|
|
||||||
if [ -n "${CDIR:-}" ]; then
|
if [ -n "${CDIR:-}" ]; then
|
||||||
if [[ "$ARCHIVE" != /* ]]; then
|
if [[ "$ARCHIVE" != /* ]]; then
|
||||||
# Relative path: preserve the archive's location before changing
|
# Relative path: preserve the archive's location before changing
|
||||||
|
|
77
vendor/github.com/prometheus/procfs/Makefile
generated
vendored
77
vendor/github.com/prometheus/procfs/Makefile
generated
vendored
|
@ -1,18 +1,71 @@
|
||||||
ci: fmt lint test
|
# Copyright 2018 The Prometheus Authors
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
fmt:
|
# Ensure GOBIN is not set during build so that promu is installed to the correct path
|
||||||
! gofmt -l *.go | read nothing
|
unexport GOBIN
|
||||||
go vet
|
|
||||||
|
|
||||||
lint:
|
GO ?= go
|
||||||
go get github.com/golang/lint/golint
|
GOFMT ?= $(GO)fmt
|
||||||
golint *.go
|
FIRST_GOPATH := $(firstword $(subst :, ,$(shell $(GO) env GOPATH)))
|
||||||
|
STATICCHECK := $(FIRST_GOPATH)/bin/staticcheck
|
||||||
|
pkgs = $(shell $(GO) list ./... | grep -v /vendor/)
|
||||||
|
|
||||||
test: sysfs/fixtures/.unpacked
|
PREFIX ?= $(shell pwd)
|
||||||
go test -v ./...
|
BIN_DIR ?= $(shell pwd)
|
||||||
|
|
||||||
sysfs/fixtures/.unpacked: sysfs/fixtures.ttar
|
ifdef DEBUG
|
||||||
./ttar -C sysfs -x -f sysfs/fixtures.ttar
|
bindata_flags = -debug
|
||||||
|
endif
|
||||||
|
|
||||||
|
STATICCHECK_IGNORE =
|
||||||
|
|
||||||
|
all: format staticcheck build test
|
||||||
|
|
||||||
|
style:
|
||||||
|
@echo ">> checking code style"
|
||||||
|
@! $(GOFMT) -d $(shell find . -path ./vendor -prune -o -name '*.go' -print) | grep '^'
|
||||||
|
|
||||||
|
check_license:
|
||||||
|
@echo ">> checking license header"
|
||||||
|
@./scripts/check_license.sh
|
||||||
|
|
||||||
|
test: fixtures/.unpacked sysfs/fixtures/.unpacked
|
||||||
|
@echo ">> running all tests"
|
||||||
|
@$(GO) test -race $(shell $(GO) list ./... | grep -v /vendor/ | grep -v examples)
|
||||||
|
|
||||||
|
format:
|
||||||
|
@echo ">> formatting code"
|
||||||
|
@$(GO) fmt $(pkgs)
|
||||||
|
|
||||||
|
vet:
|
||||||
|
@echo ">> vetting code"
|
||||||
|
@$(GO) vet $(pkgs)
|
||||||
|
|
||||||
|
staticcheck: $(STATICCHECK)
|
||||||
|
@echo ">> running staticcheck"
|
||||||
|
@$(STATICCHECK) -ignore "$(STATICCHECK_IGNORE)" $(pkgs)
|
||||||
|
|
||||||
|
%/.unpacked: %.ttar
|
||||||
|
./ttar -C $(dir $*) -x -f $*.ttar
|
||||||
touch $@
|
touch $@
|
||||||
|
|
||||||
.PHONY: fmt lint test ci
|
$(FIRST_GOPATH)/bin/staticcheck:
|
||||||
|
@GOOS= GOARCH= $(GO) get -u honnef.co/go/tools/cmd/staticcheck
|
||||||
|
|
||||||
|
.PHONY: all style check_license format test vet staticcheck
|
||||||
|
|
||||||
|
# Declaring the binaries at their default locations as PHONY targets is a hack
|
||||||
|
# to ensure the latest version is downloaded on every make execution.
|
||||||
|
# If this is not desired, copy/symlink these binaries to a different path and
|
||||||
|
# set the respective environment variables.
|
||||||
|
.PHONY: $(GOPATH)/bin/staticcheck
|
||||||
|
|
446
vendor/github.com/prometheus/procfs/fixtures.ttar
generated
vendored
Normal file
446
vendor/github.com/prometheus/procfs/fixtures.ttar
generated
vendored
Normal file
|
@ -0,0 +1,446 @@
|
||||||
|
# Archive created by ttar -c -f fixtures.ttar fixtures/
|
||||||
|
Directory: fixtures
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/26231
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/cmdline
|
||||||
|
Lines: 1
|
||||||
|
vimNULLBYTEtest.goNULLBYTE+10NULLBYTEEOF
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/comm
|
||||||
|
Lines: 1
|
||||||
|
vim
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/exe
|
||||||
|
SymlinkTo: /usr/bin/vim
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/26231/fd
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/fd/0
|
||||||
|
SymlinkTo: ../../symlinktargets/abc
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/fd/1
|
||||||
|
SymlinkTo: ../../symlinktargets/def
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/fd/10
|
||||||
|
SymlinkTo: ../../symlinktargets/xyz
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/fd/2
|
||||||
|
SymlinkTo: ../../symlinktargets/ghi
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/fd/3
|
||||||
|
SymlinkTo: ../../symlinktargets/uvw
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/io
|
||||||
|
Lines: 7
|
||||||
|
rchar: 750339
|
||||||
|
wchar: 818609
|
||||||
|
syscr: 7405
|
||||||
|
syscw: 5245
|
||||||
|
read_bytes: 1024
|
||||||
|
write_bytes: 2048
|
||||||
|
cancelled_write_bytes: -1024
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/limits
|
||||||
|
Lines: 17
|
||||||
|
Limit Soft Limit Hard Limit Units
|
||||||
|
Max cpu time unlimited unlimited seconds
|
||||||
|
Max file size unlimited unlimited bytes
|
||||||
|
Max data size unlimited unlimited bytes
|
||||||
|
Max stack size 8388608 unlimited bytes
|
||||||
|
Max core file size 0 unlimited bytes
|
||||||
|
Max resident set unlimited unlimited bytes
|
||||||
|
Max processes 62898 62898 processes
|
||||||
|
Max open files 2048 4096 files
|
||||||
|
Max locked memory 65536 65536 bytes
|
||||||
|
Max address space 8589934592 unlimited bytes
|
||||||
|
Max file locks unlimited unlimited locks
|
||||||
|
Max pending signals 62898 62898 signals
|
||||||
|
Max msgqueue size 819200 819200 bytes
|
||||||
|
Max nice priority 0 0
|
||||||
|
Max realtime priority 0 0
|
||||||
|
Max realtime timeout unlimited unlimited us
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/mountstats
|
||||||
|
Lines: 19
|
||||||
|
device rootfs mounted on / with fstype rootfs
|
||||||
|
device sysfs mounted on /sys with fstype sysfs
|
||||||
|
device proc mounted on /proc with fstype proc
|
||||||
|
device /dev/sda1 mounted on / with fstype ext4
|
||||||
|
device 192.168.1.1:/srv/test mounted on /mnt/nfs/test with fstype nfs4 statvers=1.1
|
||||||
|
opts: rw,vers=4.0,rsize=1048576,wsize=1048576,namlen=255,acregmin=3,acregmax=60,acdirmin=30,acdirmax=60,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.5,local_lock=none
|
||||||
|
age: 13968
|
||||||
|
caps: caps=0xfff7,wtmult=512,dtsize=32768,bsize=0,namlen=255
|
||||||
|
nfsv4: bm0=0xfdffafff,bm1=0xf9be3e,bm2=0x0,acl=0x0,pnfs=not configured
|
||||||
|
sec: flavor=1,pseudoflavor=1
|
||||||
|
events: 52 226 0 0 1 13 398 0 0 331 0 47 0 0 77 0 0 77 0 0 0 0 0 0 0 0 0
|
||||||
|
bytes: 1207640230 0 0 0 1210214218 0 295483 0
|
||||||
|
RPC iostats version: 1.0 p/v: 100003/4 (nfs)
|
||||||
|
xprt: tcp 832 0 1 0 11 6428 6428 0 12154 0 24 26 5726
|
||||||
|
per-op statistics
|
||||||
|
NULL: 0 0 0 0 0 0 0 0
|
||||||
|
READ: 1298 1298 0 207680 1210292152 6 79386 79407
|
||||||
|
WRITE: 0 0 0 0 0 0 0 0
|
||||||
|
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/26231/net
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/net/dev
|
||||||
|
Lines: 4
|
||||||
|
Inter-| Receive | Transmit
|
||||||
|
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
|
||||||
|
lo: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
eth0: 438 5 0 0 0 0 0 0 648 8 0 0 0 0 0 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/26231/ns
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/ns/mnt
|
||||||
|
SymlinkTo: mnt:[4026531840]
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/ns/net
|
||||||
|
SymlinkTo: net:[4026531993]
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26231/stat
|
||||||
|
Lines: 1
|
||||||
|
26231 (vim) R 5392 7446 5392 34835 7446 4218880 32533 309516 26 82 1677 44 158 99 20 0 1 0 82375 56274944 1981 18446744073709551615 4194304 6294284 140736914091744 140736914087944 139965136429984 0 0 12288 1870679807 0 0 0 17 0 0 0 31 0 0 8391624 8481048 16420864 140736914093252 140736914093279 140736914093279 140736914096107 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/26232
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/cmdline
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/comm
|
||||||
|
Lines: 1
|
||||||
|
ata_sff
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/26232/fd
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/fd/0
|
||||||
|
SymlinkTo: ../../symlinktargets/abc
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/fd/1
|
||||||
|
SymlinkTo: ../../symlinktargets/def
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/fd/2
|
||||||
|
SymlinkTo: ../../symlinktargets/ghi
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/fd/3
|
||||||
|
SymlinkTo: ../../symlinktargets/uvw
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/fd/4
|
||||||
|
SymlinkTo: ../../symlinktargets/xyz
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/limits
|
||||||
|
Lines: 17
|
||||||
|
Limit Soft Limit Hard Limit Units
|
||||||
|
Max cpu time unlimited unlimited seconds
|
||||||
|
Max file size unlimited unlimited bytes
|
||||||
|
Max data size unlimited unlimited bytes
|
||||||
|
Max stack size 8388608 unlimited bytes
|
||||||
|
Max core file size 0 unlimited bytes
|
||||||
|
Max resident set unlimited unlimited bytes
|
||||||
|
Max processes 29436 29436 processes
|
||||||
|
Max open files 1024 4096 files
|
||||||
|
Max locked memory 65536 65536 bytes
|
||||||
|
Max address space unlimited unlimited bytes
|
||||||
|
Max file locks unlimited unlimited locks
|
||||||
|
Max pending signals 29436 29436 signals
|
||||||
|
Max msgqueue size 819200 819200 bytes
|
||||||
|
Max nice priority 0 0
|
||||||
|
Max realtime priority 0 0
|
||||||
|
Max realtime timeout unlimited unlimited us
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26232/stat
|
||||||
|
Lines: 1
|
||||||
|
33 (ata_sff) S 2 0 0 0 -1 69238880 0 0 0 0 0 0 0 0 0 -20 1 0 5 0 0 18446744073709551615 0 0 0 0 0 0 0 2147483647 0 18446744073709551615 0 0 17 1 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/26233
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/26233/cmdline
|
||||||
|
Lines: 1
|
||||||
|
com.github.uiautomatorNULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTENULLBYTEEOF
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/584
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/584/stat
|
||||||
|
Lines: 2
|
||||||
|
1020 ((a b ) ( c d) ) R 28378 1020 28378 34842 1020 4218880 286 0 0 0 0 0 0 0 20 0 1 0 10839175 10395648 155 18446744073709551615 4194304 4238788 140736466511168 140736466511168 140609271124624 0 0 0 0 0 0 0 17 5 0 0 0 0 0 6336016 6337300 25579520 140736466515030 140736466515061 140736466515061 140736466518002 0
|
||||||
|
#!/bin/cat /proc/self/stat
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/buddyinfo
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/buddyinfo/short
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/buddyinfo/short/buddyinfo
|
||||||
|
Lines: 3
|
||||||
|
Node 0, zone
|
||||||
|
Node 0, zone
|
||||||
|
Node 0, zone
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/buddyinfo/sizemismatch
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/buddyinfo/sizemismatch/buddyinfo
|
||||||
|
Lines: 3
|
||||||
|
Node 0, zone DMA 1 0 1 0 2 1 1 0 1 1 3
|
||||||
|
Node 0, zone DMA32 759 572 791 475 194 45 12 0 0 0 0 0
|
||||||
|
Node 0, zone Normal 4381 1093 185 1530 567 102 4 0 0 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/buddyinfo/valid
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/buddyinfo/valid/buddyinfo
|
||||||
|
Lines: 3
|
||||||
|
Node 0, zone DMA 1 0 1 0 2 1 1 0 1 1 3
|
||||||
|
Node 0, zone DMA32 759 572 791 475 194 45 12 0 0 0 0
|
||||||
|
Node 0, zone Normal 4381 1093 185 1530 567 102 4 0 0 0 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/fs
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/fs/xfs
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/fs/xfs/stat
|
||||||
|
Lines: 23
|
||||||
|
extent_alloc 92447 97589 92448 93751
|
||||||
|
abt 0 0 0 0
|
||||||
|
blk_map 1767055 188820 184891 92447 92448 2140766 0
|
||||||
|
bmbt 0 0 0 0
|
||||||
|
dir 185039 92447 92444 136422
|
||||||
|
trans 706 944304 0
|
||||||
|
ig 185045 58807 0 126238 0 33637 22
|
||||||
|
log 2883 113448 9 17360 739
|
||||||
|
push_ail 945014 0 134260 15483 0 3940 464 159985 0 40
|
||||||
|
xstrat 92447 0
|
||||||
|
rw 107739 94045
|
||||||
|
attr 4 0 0 0
|
||||||
|
icluster 8677 7849 135802
|
||||||
|
vnodes 92601 0 0 0 92444 92444 92444 0
|
||||||
|
buf 2666287 7122 2659202 3599 2 7085 0 10297 7085
|
||||||
|
abtb2 184941 1277345 13257 13278 0 0 0 0 0 0 0 0 0 0 2746147
|
||||||
|
abtc2 345295 2416764 172637 172658 0 0 0 0 0 0 0 0 0 0 21406023
|
||||||
|
bmbt2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
ibt2 343004 1358467 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
fibt2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
qm 0 0 0 0 0 0 0 0
|
||||||
|
xpc 399724544 92823103 86219234
|
||||||
|
debug 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/mdstat
|
||||||
|
Lines: 26
|
||||||
|
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
|
||||||
|
md3 : active raid6 sda1[8] sdh1[7] sdg1[6] sdf1[5] sde1[11] sdd1[3] sdc1[10] sdb1[9]
|
||||||
|
5853468288 blocks super 1.2 level 6, 64k chunk, algorithm 2 [8/8] [UUUUUUUU]
|
||||||
|
|
||||||
|
md127 : active raid1 sdi2[0] sdj2[1]
|
||||||
|
312319552 blocks [2/2] [UU]
|
||||||
|
|
||||||
|
md0 : active raid1 sdk[2](S) sdi1[0] sdj1[1]
|
||||||
|
248896 blocks [2/2] [UU]
|
||||||
|
|
||||||
|
md4 : inactive raid1 sda3[0] sdb3[1]
|
||||||
|
4883648 blocks [2/2] [UU]
|
||||||
|
|
||||||
|
md6 : active raid1 sdb2[2] sda2[0]
|
||||||
|
195310144 blocks [2/1] [U_]
|
||||||
|
[=>...................] recovery = 8.5% (16775552/195310144) finish=17.0min speed=259783K/sec
|
||||||
|
|
||||||
|
md8 : active raid1 sdb1[1] sda1[0]
|
||||||
|
195310144 blocks [2/2] [UU]
|
||||||
|
[=>...................] resync = 8.5% (16775552/195310144) finish=17.0min speed=259783K/sec
|
||||||
|
|
||||||
|
md7 : active raid6 sdb1[0] sde1[3] sdd1[2] sdc1[1]
|
||||||
|
7813735424 blocks super 1.2 level 6, 512k chunk, algorithm 2 [4/3] [U_UU]
|
||||||
|
bitmap: 0/30 pages [0KB], 65536KB chunk
|
||||||
|
|
||||||
|
unused devices: <none>
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/net
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/net/dev
|
||||||
|
Lines: 6
|
||||||
|
Inter-| Receive | Transmit
|
||||||
|
face |bytes packets errs drop fifo frame compressed multicast|bytes packets errs drop fifo colls carrier compressed
|
||||||
|
vethf345468: 648 8 0 0 0 0 0 0 438 5 0 0 0 0 0 0
|
||||||
|
lo: 1664039048 1566805 0 0 0 0 0 0 1664039048 1566805 0 0 0 0 0 0
|
||||||
|
docker0: 2568 38 0 0 0 0 0 0 438 5 0 0 0 0 0 0
|
||||||
|
eth0: 874354587 1036395 0 0 0 0 0 0 563352563 732147 0 0 0 0 0 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/net/ip_vs
|
||||||
|
Lines: 21
|
||||||
|
IP Virtual Server version 1.2.1 (size=4096)
|
||||||
|
Prot LocalAddress:Port Scheduler Flags
|
||||||
|
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
|
||||||
|
TCP C0A80016:0CEA wlc
|
||||||
|
-> C0A85216:0CEA Tunnel 100 248 2
|
||||||
|
-> C0A85318:0CEA Tunnel 100 248 2
|
||||||
|
-> C0A85315:0CEA Tunnel 100 248 1
|
||||||
|
TCP C0A80039:0CEA wlc
|
||||||
|
-> C0A85416:0CEA Tunnel 0 0 0
|
||||||
|
-> C0A85215:0CEA Tunnel 100 1499 0
|
||||||
|
-> C0A83215:0CEA Tunnel 100 1498 0
|
||||||
|
TCP C0A80037:0CEA wlc
|
||||||
|
-> C0A8321A:0CEA Tunnel 0 0 0
|
||||||
|
-> C0A83120:0CEA Tunnel 100 0 0
|
||||||
|
TCP [2620:0000:0000:0000:0000:0000:0000:0001]:0050 sh
|
||||||
|
-> [2620:0000:0000:0000:0000:0000:0000:0002]:0050 Route 1 0 0
|
||||||
|
-> [2620:0000:0000:0000:0000:0000:0000:0003]:0050 Route 1 0 0
|
||||||
|
-> [2620:0000:0000:0000:0000:0000:0000:0004]:0050 Route 1 1 1
|
||||||
|
FWM 10001000 wlc
|
||||||
|
-> C0A8321A:0CEA Route 0 0 1
|
||||||
|
-> C0A83215:0CEA Route 0 0 2
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/net/ip_vs_stats
|
||||||
|
Lines: 6
|
||||||
|
Total Incoming Outgoing Incoming Outgoing
|
||||||
|
Conns Packets Packets Bytes Bytes
|
||||||
|
16AA370 E33656E5 0 51D8C8883AB3 0
|
||||||
|
|
||||||
|
Conns/s Pkts/s Pkts/s Bytes/s Bytes/s
|
||||||
|
4 1FB3C 0 1282A8F 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/net/rpc
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/net/rpc/nfs
|
||||||
|
Lines: 5
|
||||||
|
net 18628 0 18628 6
|
||||||
|
rpc 4329785 0 4338291
|
||||||
|
proc2 18 2 69 0 0 4410 0 0 0 0 0 0 0 0 0 0 0 99 2
|
||||||
|
proc3 22 1 4084749 29200 94754 32580 186 47747 7981 8639 0 6356 0 6962 0 7958 0 0 241 4 4 2 39
|
||||||
|
proc4 61 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/net/rpc/nfsd
|
||||||
|
Lines: 11
|
||||||
|
rc 0 6 18622
|
||||||
|
fh 0 0 0 0 0
|
||||||
|
io 157286400 0
|
||||||
|
th 8 0 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000
|
||||||
|
ra 32 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
net 18628 0 18628 6
|
||||||
|
rpc 18628 0 0 0 0
|
||||||
|
proc2 18 2 69 0 0 4410 0 0 0 0 0 0 0 0 0 0 0 99 2
|
||||||
|
proc3 22 2 112 0 2719 111 0 0 0 0 0 0 0 0 0 0 0 27 216 0 2 1 0
|
||||||
|
proc4 2 2 10853
|
||||||
|
proc4ops 72 0 0 0 1098 2 0 0 0 0 8179 5896 0 0 0 0 5900 0 0 2 0 2 0 9609 0 2 150 1272 0 0 0 1236 0 0 0 0 3 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/net/xfrm_stat
|
||||||
|
Lines: 28
|
||||||
|
XfrmInError 1
|
||||||
|
XfrmInBufferError 2
|
||||||
|
XfrmInHdrError 4
|
||||||
|
XfrmInNoStates 3
|
||||||
|
XfrmInStateProtoError 40
|
||||||
|
XfrmInStateModeError 100
|
||||||
|
XfrmInStateSeqError 6000
|
||||||
|
XfrmInStateExpired 4
|
||||||
|
XfrmInStateMismatch 23451
|
||||||
|
XfrmInStateInvalid 55555
|
||||||
|
XfrmInTmplMismatch 51
|
||||||
|
XfrmInNoPols 65432
|
||||||
|
XfrmInPolBlock 100
|
||||||
|
XfrmInPolError 10000
|
||||||
|
XfrmOutError 1000000
|
||||||
|
XfrmOutBundleGenError 43321
|
||||||
|
XfrmOutBundleCheckError 555
|
||||||
|
XfrmOutNoStates 869
|
||||||
|
XfrmOutStateProtoError 4542
|
||||||
|
XfrmOutStateModeError 4
|
||||||
|
XfrmOutStateSeqError 543
|
||||||
|
XfrmOutStateExpired 565
|
||||||
|
XfrmOutPolBlock 43456
|
||||||
|
XfrmOutPolDead 7656
|
||||||
|
XfrmOutPolError 1454
|
||||||
|
XfrmFwdHdrError 6654
|
||||||
|
XfrmOutStateInvalid 28765
|
||||||
|
XfrmAcquireError 24532
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/self
|
||||||
|
SymlinkTo: 26231
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/stat
|
||||||
|
Lines: 16
|
||||||
|
cpu 301854 612 111922 8979004 3552 2 3944 0 0 0
|
||||||
|
cpu0 44490 19 21045 1087069 220 1 3410 0 0 0
|
||||||
|
cpu1 47869 23 16474 1110787 591 0 46 0 0 0
|
||||||
|
cpu2 46504 36 15916 1112321 441 0 326 0 0 0
|
||||||
|
cpu3 47054 102 15683 1113230 533 0 60 0 0 0
|
||||||
|
cpu4 28413 25 10776 1140321 217 0 8 0 0 0
|
||||||
|
cpu5 29271 101 11586 1136270 672 0 30 0 0 0
|
||||||
|
cpu6 29152 36 10276 1139721 319 0 29 0 0 0
|
||||||
|
cpu7 29098 268 10164 1139282 555 0 31 0 0 0
|
||||||
|
intr 8885917 17 0 0 0 0 0 0 0 1 79281 0 0 0 0 0 0 0 231237 0 0 0 0 250586 103 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 223424 190745 13 906 1283803 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||||
|
ctxt 38014093
|
||||||
|
btime 1418183276
|
||||||
|
processes 26442
|
||||||
|
procs_running 2
|
||||||
|
procs_blocked 1
|
||||||
|
softirq 5057579 250191 1481983 1647 211099 186066 0 1783454 622196 12499 508444
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/symlinktargets
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/symlinktargets/README
|
||||||
|
Lines: 2
|
||||||
|
This directory contains some empty files that are the symlinks the files in the "fd" directory point to.
|
||||||
|
They are otherwise ignored by the tests
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/symlinktargets/abc
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/symlinktargets/def
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/symlinktargets/ghi
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/symlinktargets/uvw
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/symlinktargets/xyz
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
13
vendor/github.com/prometheus/procfs/fs.go
generated
vendored
13
vendor/github.com/prometheus/procfs/fs.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/ipvs.go
generated
vendored
13
vendor/github.com/prometheus/procfs/ipvs.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/mdstat.go
generated
vendored
13
vendor/github.com/prometheus/procfs/mdstat.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/mountstats.go
generated
vendored
13
vendor/github.com/prometheus/procfs/mountstats.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
// While implementing parsing of /proc/[pid]/mountstats, this blog was used
|
// While implementing parsing of /proc/[pid]/mountstats, this blog was used
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/net_dev.go
generated
vendored
13
vendor/github.com/prometheus/procfs/net_dev.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
16
vendor/github.com/prometheus/procfs/proc.go
generated
vendored
16
vendor/github.com/prometheus/procfs/proc.go
generated
vendored
|
@ -1,6 +1,20 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bytes"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
"os"
|
"os"
|
||||||
|
@ -113,7 +127,7 @@ func (p Proc) CmdLine() ([]string, error) {
|
||||||
return []string{}, nil
|
return []string{}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
return strings.Split(string(data[:len(data)-1]), string(byte(0))), nil
|
return strings.Split(string(bytes.TrimRight(data, string("\x00"))), string(byte(0))), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Comm returns the command name of a process.
|
// Comm returns the command name of a process.
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/proc_io.go
generated
vendored
13
vendor/github.com/prometheus/procfs/proc_io.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/proc_limits.go
generated
vendored
13
vendor/github.com/prometheus/procfs/proc_limits.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/proc_ns.go
generated
vendored
13
vendor/github.com/prometheus/procfs/proc_ns.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/proc_stat.go
generated
vendored
13
vendor/github.com/prometheus/procfs/proc_stat.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
13
vendor/github.com/prometheus/procfs/stat.go
generated
vendored
13
vendor/github.com/prometheus/procfs/stat.go
generated
vendored
|
@ -1,3 +1,16 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
package procfs
|
package procfs
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
|
130
vendor/github.com/prometheus/procfs/sysfs/fixtures.ttar
generated
vendored
130
vendor/github.com/prometheus/procfs/sysfs/fixtures.ttar
generated
vendored
|
@ -1,3 +1,4 @@
|
||||||
|
# Archive created by ttar -c -f fixtures.ttar fixtures/
|
||||||
Directory: fixtures
|
Directory: fixtures
|
||||||
Mode: 755
|
Mode: 755
|
||||||
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
@ -719,3 +720,132 @@ Lines: 1
|
||||||
extent_alloc 2 0 0 0
|
extent_alloc 2 0 0 0
|
||||||
Mode: 644
|
Mode: 644
|
||||||
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Directory: fixtures/class/net/eth0/
|
||||||
|
Mode: 755
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/addr_assign_type
|
||||||
|
Lines: 1
|
||||||
|
3
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/addr_len
|
||||||
|
Lines: 1
|
||||||
|
6
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/address
|
||||||
|
Lines: 1
|
||||||
|
01:01:01:01:01:01
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/broadcast
|
||||||
|
Lines: 1
|
||||||
|
ff:ff:ff:ff:ff:ff
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/carrier
|
||||||
|
Lines: 1
|
||||||
|
1
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/carrier_changes
|
||||||
|
Lines: 1
|
||||||
|
2
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/carrier_down_count
|
||||||
|
Lines: 1
|
||||||
|
1
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/carrier_up_count
|
||||||
|
Lines: 1
|
||||||
|
1
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/dev_id
|
||||||
|
Lines: 1
|
||||||
|
0x20
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/dormant
|
||||||
|
Lines: 1
|
||||||
|
1
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/duplex
|
||||||
|
Lines: 1
|
||||||
|
full
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/flags
|
||||||
|
Lines: 1
|
||||||
|
0x1303
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/ifalias
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/ifindex
|
||||||
|
Lines: 1
|
||||||
|
2
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/iflink
|
||||||
|
Lines: 1
|
||||||
|
2
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/link_mode
|
||||||
|
Lines: 1
|
||||||
|
1
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/mtu
|
||||||
|
Lines: 1
|
||||||
|
1500
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/name_assign_type
|
||||||
|
Lines: 1
|
||||||
|
2
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/netdev_group
|
||||||
|
Lines: 1
|
||||||
|
0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/operstate
|
||||||
|
Lines: 1
|
||||||
|
up
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/phys_port_id
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/phys_port_name
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/phys_switch_id
|
||||||
|
Lines: 0
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/speed
|
||||||
|
Lines: 1
|
||||||
|
1000
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/tx_queue_len
|
||||||
|
Lines: 1
|
||||||
|
1000
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
Path: fixtures/class/net/eth0/type
|
||||||
|
Lines: 1
|
||||||
|
1
|
||||||
|
Mode: 644
|
||||||
|
# ttar - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
165
vendor/github.com/prometheus/procfs/sysfs/net_class.go
generated
vendored
Normal file
165
vendor/github.com/prometheus/procfs/sysfs/net_class.go
generated
vendored
Normal file
|
@ -0,0 +1,165 @@
|
||||||
|
// Copyright 2018 The Prometheus Authors
|
||||||
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
// you may not use this file except in compliance with the License.
|
||||||
|
// You may obtain a copy of the License at
|
||||||
|
//
|
||||||
|
// http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
//
|
||||||
|
// Unless required by applicable law or agreed to in writing, software
|
||||||
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
// See the License for the specific language governing permissions and
|
||||||
|
// limitations under the License.
|
||||||
|
|
||||||
|
package sysfs
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"io/ioutil"
|
||||||
|
"os"
|
||||||
|
"reflect"
|
||||||
|
"strconv"
|
||||||
|
"strings"
|
||||||
|
"syscall"
|
||||||
|
)
|
||||||
|
|
||||||
|
// NetClassIface contains info from files in /sys/class/net/<iface>
|
||||||
|
// for single interface (iface).
|
||||||
|
type NetClassIface struct {
|
||||||
|
Name string // Interface name
|
||||||
|
AddrAssignType int64 `fileName:"addr_assign_type"` // /sys/class/net/<iface>/addr_assign_type
|
||||||
|
AddrLen int64 `fileName:"addr_len"` // /sys/class/net/<iface>/addr_len
|
||||||
|
Address string `fileName:"address"` // /sys/class/net/<iface>/address
|
||||||
|
Broadcast string `fileName:"broadcast"` // /sys/class/net/<iface>/broadcast
|
||||||
|
Carrier int64 `fileName:"carrier"` // /sys/class/net/<iface>/carrier
|
||||||
|
CarrierChanges int64 `fileName:"carrier_changes"` // /sys/class/net/<iface>/carrier_changes
|
||||||
|
CarrierUpCount int64 `fileName:"carrier_up_count"` // /sys/class/net/<iface>/carrier_up_count
|
||||||
|
CarrierDownCount int64 `fileName:"carrier_down_count"` // /sys/class/net/<iface>/carrier_down_count
|
||||||
|
DevID int64 `fileName:"dev_id"` // /sys/class/net/<iface>/dev_id
|
||||||
|
Dormant int64 `fileName:"dormant"` // /sys/class/net/<iface>/dormant
|
||||||
|
Duplex string `fileName:"duplex"` // /sys/class/net/<iface>/duplex
|
||||||
|
Flags int64 `fileName:"flags"` // /sys/class/net/<iface>/flags
|
||||||
|
IfAlias string `fileName:"ifalias"` // /sys/class/net/<iface>/ifalias
|
||||||
|
IfIndex int64 `fileName:"ifindex"` // /sys/class/net/<iface>/ifindex
|
||||||
|
IfLink int64 `fileName:"iflink"` // /sys/class/net/<iface>/iflink
|
||||||
|
LinkMode int64 `fileName:"link_mode"` // /sys/class/net/<iface>/link_mode
|
||||||
|
MTU int64 `fileName:"mtu"` // /sys/class/net/<iface>/mtu
|
||||||
|
NameAssignType int64 `fileName:"name_assign_type"` // /sys/class/net/<iface>/name_assign_type
|
||||||
|
NetDevGroup int64 `fileName:"netdev_group"` // /sys/class/net/<iface>/netdev_group
|
||||||
|
OperState string `fileName:"operstate"` // /sys/class/net/<iface>/operstate
|
||||||
|
PhysPortID string `fileName:"phys_port_id"` // /sys/class/net/<iface>/phys_port_id
|
||||||
|
PhysPortName string `fileName:"phys_port_name"` // /sys/class/net/<iface>/phys_port_name
|
||||||
|
PhysSwitchID string `fileName:"phys_switch_id"` // /sys/class/net/<iface>/phys_switch_id
|
||||||
|
Speed int64 `fileName:"speed"` // /sys/class/net/<iface>/speed
|
||||||
|
TxQueueLen int64 `fileName:"tx_queue_len"` // /sys/class/net/<iface>/tx_queue_len
|
||||||
|
Type int64 `fileName:"type"` // /sys/class/net/<iface>/type
|
||||||
|
}
|
||||||
|
|
||||||
|
// NetClass is collection of info for every interface (iface) in /sys/class/net. The map keys
|
||||||
|
// are interface (iface) names.
|
||||||
|
type NetClass map[string]NetClassIface
|
||||||
|
|
||||||
|
// NewNetClass returns info for all net interfaces (iface) read from /sys/class/net/<iface>.
|
||||||
|
func NewNetClass() (NetClass, error) {
|
||||||
|
fs, err := NewFS(DefaultMountPoint)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return fs.NewNetClass()
|
||||||
|
}
|
||||||
|
|
||||||
|
// NewNetClass returns info for all net interfaces (iface) read from /sys/class/net/<iface>.
|
||||||
|
func (fs FS) NewNetClass() (NetClass, error) {
|
||||||
|
path := fs.Path("class/net")
|
||||||
|
|
||||||
|
devices, err := ioutil.ReadDir(path)
|
||||||
|
if err != nil {
|
||||||
|
return NetClass{}, fmt.Errorf("cannot access %s dir %s", path, err)
|
||||||
|
}
|
||||||
|
|
||||||
|
netClass := NetClass{}
|
||||||
|
for _, deviceDir := range devices {
|
||||||
|
interfaceClass, err := netClass.parseNetClassIface(path + "/" + deviceDir.Name())
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
interfaceClass.Name = deviceDir.Name()
|
||||||
|
netClass[deviceDir.Name()] = *interfaceClass
|
||||||
|
}
|
||||||
|
return netClass, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// parseNetClassIface scans predefined files in /sys/class/net/<iface>
|
||||||
|
// directory and gets their contents.
|
||||||
|
func (nc NetClass) parseNetClassIface(devicePath string) (*NetClassIface, error) {
|
||||||
|
interfaceClass := NetClassIface{}
|
||||||
|
interfaceElem := reflect.ValueOf(&interfaceClass).Elem()
|
||||||
|
interfaceType := reflect.TypeOf(interfaceClass)
|
||||||
|
|
||||||
|
//start from 1 - skip the Name field
|
||||||
|
for i := 1; i < interfaceElem.NumField(); i++ {
|
||||||
|
fieldType := interfaceType.Field(i)
|
||||||
|
fieldValue := interfaceElem.Field(i)
|
||||||
|
|
||||||
|
if fieldType.Tag.Get("fileName") == "" {
|
||||||
|
panic(fmt.Errorf("field %s does not have a filename tag", fieldType.Name))
|
||||||
|
}
|
||||||
|
|
||||||
|
fileContents, err := sysReadFile(devicePath + "/" + fieldType.Tag.Get("fileName"))
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
if os.IsNotExist(err) || err.Error() == "operation not supported" || err.Error() == "invalid argument" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
return nil, fmt.Errorf("could not access file %s: %s", fieldType.Tag.Get("fileName"), err)
|
||||||
|
}
|
||||||
|
value := strings.TrimSpace(string(fileContents))
|
||||||
|
|
||||||
|
switch fieldValue.Kind() {
|
||||||
|
case reflect.Int64:
|
||||||
|
if strings.HasPrefix(value, "0x") {
|
||||||
|
intValue, err := strconv.ParseInt(value[2:], 16, 64)
|
||||||
|
if err != nil {
|
||||||
|
return nil, fmt.Errorf("expected hex value for %s, got: %s", fieldType.Name, value)
|
||||||
|
}
|
||||||
|
fieldValue.SetInt(intValue)
|
||||||
|
} else {
|
||||||
|
intValue, err := strconv.ParseInt(value, 10, 64)
|
||||||
|
if err != nil {
|
||||||
|
return nil, fmt.Errorf("expected Uint64 value for %s, got: %s", fieldType.Name, value)
|
||||||
|
}
|
||||||
|
fieldValue.SetInt(intValue)
|
||||||
|
}
|
||||||
|
case reflect.String:
|
||||||
|
fieldValue.SetString(value)
|
||||||
|
default:
|
||||||
|
return nil, fmt.Errorf("unhandled type %q", fieldValue.Kind())
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return &interfaceClass, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// sysReadFile is a simplified ioutil.ReadFile that invokes syscall.Read directly.
|
||||||
|
// https://github.com/prometheus/node_exporter/pull/728/files
|
||||||
|
func sysReadFile(file string) ([]byte, error) {
|
||||||
|
f, err := os.Open(file)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
defer f.Close()
|
||||||
|
|
||||||
|
// On some machines, hwmon drivers are broken and return EAGAIN. This causes
|
||||||
|
// Go's ioutil.ReadFile implementation to poll forever.
|
||||||
|
//
|
||||||
|
// Since we either want to read data or bail immediately, do the simplest
|
||||||
|
// possible read using syscall directly.
|
||||||
|
b := make([]byte, 128)
|
||||||
|
n, err := syscall.Read(int(f.Fd()), b)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return b[:n], nil
|
||||||
|
}
|
133
vendor/github.com/prometheus/procfs/ttar
generated
vendored
133
vendor/github.com/prometheus/procfs/ttar
generated
vendored
|
@ -1,11 +1,26 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
# Purpose: plain text tar format
|
# Purpose: plain text tar format
|
||||||
# Limitations: - only suitable for text files, directories, and symlinks
|
# Limitations: - only suitable for text files, directories, and symlinks
|
||||||
# - stores only filename, content, and mode
|
# - stores only filename, content, and mode
|
||||||
# - not designed for untrusted input
|
# - not designed for untrusted input
|
||||||
|
#
|
||||||
# Note: must work with bash version 3.2 (macOS)
|
# Note: must work with bash version 3.2 (macOS)
|
||||||
|
|
||||||
|
# Copyright 2017 Roger Luethi
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
set -o errexit -o nounset
|
set -o errexit -o nounset
|
||||||
|
|
||||||
# Sanitize environment (for instance, standard sorting of glob matches)
|
# Sanitize environment (for instance, standard sorting of glob matches)
|
||||||
|
@ -13,6 +28,55 @@ export LC_ALL=C
|
||||||
|
|
||||||
path=""
|
path=""
|
||||||
CMD=""
|
CMD=""
|
||||||
|
ARG_STRING="$*"
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# Not all sed implementations can work on null bytes. In order to make ttar
|
||||||
|
# work out of the box on macOS, use Python as a stream editor.
|
||||||
|
|
||||||
|
USE_PYTHON=0
|
||||||
|
|
||||||
|
PYTHON_CREATE_FILTER=$(cat << 'PCF'
|
||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
for line in sys.stdin:
|
||||||
|
line = re.sub(r'EOF', r'\EOF', line)
|
||||||
|
line = re.sub(r'NULLBYTE', r'\NULLBYTE', line)
|
||||||
|
line = re.sub('\x00', r'NULLBYTE', line)
|
||||||
|
sys.stdout.write(line)
|
||||||
|
PCF
|
||||||
|
)
|
||||||
|
|
||||||
|
PYTHON_EXTRACT_FILTER=$(cat << 'PEF'
|
||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
|
||||||
|
for line in sys.stdin:
|
||||||
|
line = re.sub(r'(?<!\\)NULLBYTE', '\x00', line)
|
||||||
|
line = re.sub(r'\\NULLBYTE', 'NULLBYTE', line)
|
||||||
|
line = re.sub(r'([^\\])EOF', r'\1', line)
|
||||||
|
line = re.sub(r'\\EOF', 'EOF', line)
|
||||||
|
sys.stdout.write(line)
|
||||||
|
PEF
|
||||||
|
)
|
||||||
|
|
||||||
|
function test_environment {
|
||||||
|
if [[ "$(echo "a" | sed 's/a/\x0/' | wc -c)" -ne 2 ]]; then
|
||||||
|
echo "WARNING sed unable to handle null bytes, using Python (slow)."
|
||||||
|
if ! which python >/dev/null; then
|
||||||
|
echo "ERROR Python not found. Aborting."
|
||||||
|
exit 2
|
||||||
|
fi
|
||||||
|
USE_PYTHON=1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
|
||||||
function usage {
|
function usage {
|
||||||
bname=$(basename "$0")
|
bname=$(basename "$0")
|
||||||
|
@ -23,6 +87,7 @@ Usage: $bname [-C <DIR>] -c -f <ARCHIVE> <FILE...> (create archive)
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-C <DIR> (change directory)
|
-C <DIR> (change directory)
|
||||||
|
-v (verbose)
|
||||||
|
|
||||||
Example: Change to sysfs directory, create ttar file from fixtures directory
|
Example: Change to sysfs directory, create ttar file from fixtures directory
|
||||||
$bname -C sysfs -c -f sysfs/fixtures.ttar fixtures/
|
$bname -C sysfs -c -f sysfs/fixtures.ttar fixtures/
|
||||||
|
@ -45,6 +110,8 @@ function set_cmd {
|
||||||
CMD=$1
|
CMD=$1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unset VERBOSE
|
||||||
|
|
||||||
while getopts :cf:htxvC: opt; do
|
while getopts :cf:htxvC: opt; do
|
||||||
case $opt in
|
case $opt in
|
||||||
c)
|
c)
|
||||||
|
@ -142,8 +209,37 @@ function extract {
|
||||||
fi
|
fi
|
||||||
while IFS= read -r line; do
|
while IFS= read -r line; do
|
||||||
line_no=$(( line_no + 1 ))
|
line_no=$(( line_no + 1 ))
|
||||||
|
local eof_without_newline
|
||||||
if [ "$size" -gt 0 ]; then
|
if [ "$size" -gt 0 ]; then
|
||||||
echo "$line" >> "$path"
|
if [[ "$line" =~ [^\\]EOF ]]; then
|
||||||
|
# An EOF not preceeded by a backslash indicates that the line
|
||||||
|
# does not end with a newline
|
||||||
|
eof_without_newline=1
|
||||||
|
else
|
||||||
|
eof_without_newline=0
|
||||||
|
fi
|
||||||
|
# Replace NULLBYTE with null byte if at beginning of line
|
||||||
|
# Replace NULLBYTE with null byte unless preceeded by backslash
|
||||||
|
# Remove one backslash in front of NULLBYTE (if any)
|
||||||
|
# Remove EOF unless preceeded by backslash
|
||||||
|
# Remove one backslash in front of EOF
|
||||||
|
if [ $USE_PYTHON -eq 1 ]; then
|
||||||
|
echo -n "$line" | python -c "$PYTHON_EXTRACT_FILTER" >> "$path"
|
||||||
|
else
|
||||||
|
# The repeated pattern makes up for sed's lack of negative
|
||||||
|
# lookbehind assertions (for consecutive null bytes).
|
||||||
|
echo -n "$line" | \
|
||||||
|
sed -e 's/^NULLBYTE/\x0/g;
|
||||||
|
s/\([^\\]\)NULLBYTE/\1\x0/g;
|
||||||
|
s/\([^\\]\)NULLBYTE/\1\x0/g;
|
||||||
|
s/\\NULLBYTE/NULLBYTE/g;
|
||||||
|
s/\([^\\]\)EOF/\1/g;
|
||||||
|
s/\\EOF/EOF/g;
|
||||||
|
' >> "$path"
|
||||||
|
fi
|
||||||
|
if [[ "$eof_without_newline" -eq 0 ]]; then
|
||||||
|
echo >> "$path"
|
||||||
|
fi
|
||||||
size=$(( size - 1 ))
|
size=$(( size - 1 ))
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
|
@ -187,11 +283,14 @@ function get_mode {
|
||||||
local mfile=$1
|
local mfile=$1
|
||||||
if [ -z "${STAT_OPTION:-}" ]; then
|
if [ -z "${STAT_OPTION:-}" ]; then
|
||||||
if stat -c '%a' "$mfile" >/dev/null 2>&1; then
|
if stat -c '%a' "$mfile" >/dev/null 2>&1; then
|
||||||
|
# GNU stat
|
||||||
STAT_OPTION='-c'
|
STAT_OPTION='-c'
|
||||||
STAT_FORMAT='%a'
|
STAT_FORMAT='%a'
|
||||||
else
|
else
|
||||||
|
# BSD stat
|
||||||
STAT_OPTION='-f'
|
STAT_OPTION='-f'
|
||||||
STAT_FORMAT='%A'
|
# Octal output, user/group/other (omit file type, sticky bit)
|
||||||
|
STAT_FORMAT='%OLp'
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
stat "${STAT_OPTION}" "${STAT_FORMAT}" "$mfile"
|
stat "${STAT_OPTION}" "${STAT_FORMAT}" "$mfile"
|
||||||
|
@ -200,6 +299,7 @@ function get_mode {
|
||||||
function _create {
|
function _create {
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
local mode
|
local mode
|
||||||
|
local eof_without_newline
|
||||||
while (( "$#" )); do
|
while (( "$#" )); do
|
||||||
file=$1
|
file=$1
|
||||||
if [ -L "$file" ]; then
|
if [ -L "$file" ]; then
|
||||||
|
@ -223,8 +323,30 @@ function _create {
|
||||||
elif [ -f "$file" ]; then
|
elif [ -f "$file" ]; then
|
||||||
echo "Path: $file"
|
echo "Path: $file"
|
||||||
lines=$(wc -l "$file"|awk '{print $1}')
|
lines=$(wc -l "$file"|awk '{print $1}')
|
||||||
|
eof_without_newline=0
|
||||||
|
if [[ "$(wc -c "$file"|awk '{print $1}')" -gt 0 ]] && \
|
||||||
|
[[ "$(tail -c 1 "$file" | wc -l)" -eq 0 ]]; then
|
||||||
|
eof_without_newline=1
|
||||||
|
lines=$((lines+1))
|
||||||
|
fi
|
||||||
echo "Lines: $lines"
|
echo "Lines: $lines"
|
||||||
cat "$file"
|
# Add backslash in front of EOF
|
||||||
|
# Add backslash in front of NULLBYTE
|
||||||
|
# Replace null byte with NULLBYTE
|
||||||
|
if [ $USE_PYTHON -eq 1 ]; then
|
||||||
|
< "$file" python -c "$PYTHON_CREATE_FILTER"
|
||||||
|
else
|
||||||
|
< "$file" \
|
||||||
|
sed 's/EOF/\\EOF/g;
|
||||||
|
s/NULLBYTE/\\NULLBYTE/g;
|
||||||
|
s/\x0/NULLBYTE/g;
|
||||||
|
'
|
||||||
|
fi
|
||||||
|
if [[ "$eof_without_newline" -eq 1 ]]; then
|
||||||
|
# Finish line with EOF to indicate that the original line did
|
||||||
|
# not end with a linefeed
|
||||||
|
echo "EOF"
|
||||||
|
fi
|
||||||
mode=$(get_mode "$file")
|
mode=$(get_mode "$file")
|
||||||
echo "Mode: $mode"
|
echo "Mode: $mode"
|
||||||
vecho "$mode $file"
|
vecho "$mode $file"
|
||||||
|
@ -249,9 +371,12 @@ function create {
|
||||||
rm "$ttar_file"
|
rm "$ttar_file"
|
||||||
fi
|
fi
|
||||||
exec > "$ttar_file"
|
exec > "$ttar_file"
|
||||||
|
echo "# Archive created by ttar $ARG_STRING"
|
||||||
_create "$@"
|
_create "$@"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
test_environment
|
||||||
|
|
||||||
if [ -n "${CDIR:-}" ]; then
|
if [ -n "${CDIR:-}" ]; then
|
||||||
if [[ "$ARCHIVE" != /* ]]; then
|
if [[ "$ARCHIVE" != /* ]]; then
|
||||||
# Relative path: preserve the archive's location before changing
|
# Relative path: preserve the archive's location before changing
|
||||||
|
|
28
vendor/vendor.json
vendored
28
vendor/vendor.json
vendored
|
@ -163,40 +163,40 @@
|
||||||
"revisionTime": "2018-01-10T21:49:58Z"
|
"revisionTime": "2018-01-10T21:49:58Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"checksumSHA1": "Qvc01kv3ttHV2P2+J68g9ioU4Qs=",
|
"checksumSHA1": "Etvt6mgzvD7ARf4Ux03LHfgSlzU=",
|
||||||
"path": "github.com/prometheus/procfs",
|
"path": "github.com/prometheus/procfs",
|
||||||
"revision": "282c8707aa210456a825798969cc27edda34992a",
|
"revision": "54d17b57dd7d4a3aa092476596b3f8a933bde349",
|
||||||
"revisionTime": "2018-02-12T14:59:26Z"
|
"revisionTime": "2018-03-10T14:15:09Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"checksumSHA1": "O64FotgWPYIpl3m2gvTEPIem+xg=",
|
"checksumSHA1": "O64FotgWPYIpl3m2gvTEPIem+xg=",
|
||||||
"path": "github.com/prometheus/procfs/bcache",
|
"path": "github.com/prometheus/procfs/bcache",
|
||||||
"revision": "282c8707aa210456a825798969cc27edda34992a",
|
"revision": "54d17b57dd7d4a3aa092476596b3f8a933bde349",
|
||||||
"revisionTime": "2018-02-12T14:59:26Z"
|
"revisionTime": "2018-03-10T14:15:09Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"checksumSHA1": "lv9rIcjbVEGo8AT1UCUZXhXrfQc=",
|
"checksumSHA1": "lv9rIcjbVEGo8AT1UCUZXhXrfQc=",
|
||||||
"path": "github.com/prometheus/procfs/internal/util",
|
"path": "github.com/prometheus/procfs/internal/util",
|
||||||
"revision": "282c8707aa210456a825798969cc27edda34992a",
|
"revision": "54d17b57dd7d4a3aa092476596b3f8a933bde349",
|
||||||
"revisionTime": "2018-02-12T14:59:26Z"
|
"revisionTime": "2018-03-10T14:15:09Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"checksumSHA1": "EekY1iRG9JY74mDD0jsbFCWbAFs=",
|
"checksumSHA1": "EekY1iRG9JY74mDD0jsbFCWbAFs=",
|
||||||
"path": "github.com/prometheus/procfs/nfs",
|
"path": "github.com/prometheus/procfs/nfs",
|
||||||
"revision": "282c8707aa210456a825798969cc27edda34992a",
|
"revision": "54d17b57dd7d4a3aa092476596b3f8a933bde349",
|
||||||
"revisionTime": "2018-02-12T14:59:26Z"
|
"revisionTime": "2018-03-10T14:15:09Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"checksumSHA1": "wMhQkA/xQw3Q8eI+PIAjFmS94Qo=",
|
"checksumSHA1": "pqTCYsAj0qGsfJTkrAVQPUMN2qU=",
|
||||||
"path": "github.com/prometheus/procfs/sysfs",
|
"path": "github.com/prometheus/procfs/sysfs",
|
||||||
"revision": "282c8707aa210456a825798969cc27edda34992a",
|
"revision": "54d17b57dd7d4a3aa092476596b3f8a933bde349",
|
||||||
"revisionTime": "2018-02-12T14:59:26Z"
|
"revisionTime": "2018-03-10T14:15:09Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"checksumSHA1": "yItvTQLUVqm/ArLEbvEhqG0T5a0=",
|
"checksumSHA1": "yItvTQLUVqm/ArLEbvEhqG0T5a0=",
|
||||||
"path": "github.com/prometheus/procfs/xfs",
|
"path": "github.com/prometheus/procfs/xfs",
|
||||||
"revision": "282c8707aa210456a825798969cc27edda34992a",
|
"revision": "54d17b57dd7d4a3aa092476596b3f8a933bde349",
|
||||||
"revisionTime": "2018-02-12T14:59:26Z"
|
"revisionTime": "2018-03-10T14:15:09Z"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"checksumSHA1": "ySaT8G3I3y4MmnoXOYAAX0rC+p8=",
|
"checksumSHA1": "ySaT8G3I3y4MmnoXOYAAX0rC+p8=",
|
||||||
|
|
Loading…
Reference in a new issue