diff --git a/Makefile b/Makefile index 8fd2462..c1f6f36 100644 --- a/Makefile +++ b/Makefile @@ -1,9 +1,9 @@ GIT_COMMIT = $(shell git rev-parse --short HEAD) GIT_STATUS = $(shell test -n "`git status --porcelain`" && echo "+CHANGES") -BUILD_CMD = go build -a -ldflags "-X main.GITCOMMIT $(GIT_COMMIT)$(GIT_STATUS)" +BUILD_CMD = go build -ldflags "-X main.GITCOMMIT $(GIT_COMMIT)$(GIT_STATUS)" default: clean test all - ./bin/metrix --cpu --memory --net --df --disk --processes + ./bin/metrix --cpu --memory --net --df --disk --processes --files wip: ctags test @@ -22,7 +22,7 @@ test: jenkins: clean install_dependencies test all PROC_ROOT=./fixtures ./bin/metrix --loadavg --disk --memory --processes --cpu - ./bin/metrix --loadavg --disk --memory --processes --cpu --keys + ./bin/metrix --loadavg --disk --memory --processes --cpu --keys --files all: $(BUILD_CMD) -o bin/metrix diff --git a/README.md b/README.md index 28baac7..f69654c 100644 --- a/README.md +++ b/README.md @@ -102,6 +102,11 @@ All metrics are tagged with `file_system` and `mounted_on` when writing to OpenT net.ip.InOctets net.ip.OutOctets +### Open Files (fetched with lsof) + + $ ./bin/metrix --files --keys + files.Open + ### Process All metrics are tagged with `pid`, parent pid (`ppid`), `name` and raw `comm` value of the process when writing to OpenTSDB. diff --git a/files.go b/files.go new file mode 100644 index 0000000..652ccba --- /dev/null +++ b/files.go @@ -0,0 +1,62 @@ +package main + +import ( + "fmt" + "os/exec" + "strings" +) + +const ( + FILES = "files" + FILES_OPEN = "Open" +) + +var LSOF_CMD = `lsof | tail -n +2 | tr -s " " "` + "\t" + `" | cut -f 1,2` + +func init() { + parser.Add(FILES, "true", "Collect open files") +} + +type Files struct { + RawStatus []byte +} + +func (files *Files) fetch() (b []byte, e error) { + if len(files.RawStatus) == 0 { + args := []string { "-c" } + args = append(args, LSOF_CMD) + files.RawStatus, _ = exec.Command("bash", args...).Output() + if len(files.RawStatus) == 0 { + return b, fmt.Errorf("lsof returned empty result") + } + } + return files.RawStatus, nil +} + +func (f *Files) Collect(col *MetricsCollection) error { + b, e := f.fetch() + if e != nil { + return e + } + stats := map[string]int64{} + for _, line := range strings.Split(string(b), "\n") { + stats[line]++ + } + for k, v := range stats { + chunks := strings.SplitN(k, "\t", 2) + if len(chunks) == 2 { + name, pid := chunks[0], chunks[1] + tags := map[string]string{"name": NormalizeProcessName(name), "pid": pid} + col.AddWithTags(FILES_OPEN, v, tags) + } + } + return nil +} + +func (f *Files) Keys() []string { + return []string{FILES_OPEN} +} + +func (f *Files) Prefix() string { + return FILES +} diff --git a/files_test.go b/files_test.go new file mode 100644 index 0000000..56a9747 --- /dev/null +++ b/files_test.go @@ -0,0 +1,28 @@ +package main + +import ( + "github.com/stretchr/testify/assert" + "testing" +) + +func TestFiles(t *testing.T) { + files := &Files{RawStatus: readFile("fixtures/lsof.txt")} + assert.Equal(t, files.Prefix(), "files") + assert.NotEmpty(t, files.Keys()) + + mh := new(MetricHandler) + stats, _ := mh.Collect(files) + assert.True(t, len(stats) > 4) + assert.Equal(t, len(stats), 74) + + names := map[string]int{} + for _, s := range stats { + names[s.Tags["name"]]++ + } + assert.Equal(t, names["kworker/0"], 0) + assert.Equal(t, names["kworker"], 8) +} + +func TestParseLsofOutput(t *testing.T) { + return +} diff --git a/fixtures/lsof.txt b/fixtures/lsof.txt new file mode 100644 index 0000000..21b8528 --- /dev/null +++ b/fixtures/lsof.txt @@ -0,0 +1,3025 @@ +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +init 1 +kthreadd 2 +kthreadd 2 +kthreadd 2 +ksoftirqd 3 +ksoftirqd 3 +ksoftirqd 3 +kworker/0 5 +kworker/0 5 +kworker/0 5 +kworker/u 6 +kworker/u 6 +kworker/u 6 +kworker/u 7 +kworker/u 7 +kworker/u 7 +migration 8 +migration 8 +migration 8 +rcu_bh 9 +rcu_bh 9 +rcu_bh 9 +rcu_sched 10 +rcu_sched 10 +rcu_sched 10 +watchdog/ 11 +watchdog/ 11 +watchdog/ 11 +cpuset 12 +cpuset 12 +cpuset 12 +khelper 13 +khelper 13 +khelper 13 +kdevtmpfs 14 +kdevtmpfs 14 +kdevtmpfs 14 +netns 15 +netns 15 +netns 15 +bdi-defau 16 +bdi-defau 16 +bdi-defau 16 +kintegrit 17 +kintegrit 17 +kintegrit 17 +kblockd 18 +kblockd 18 +kblockd 18 +ata_sff 19 +ata_sff 19 +ata_sff 19 +khubd 20 +khubd 20 +khubd 20 +md 21 +md 21 +md 21 +devfreq_w 22 +devfreq_w 22 +devfreq_w 22 +khungtask 24 +khungtask 24 +khungtask 24 +kswapd0 25 +kswapd0 25 +kswapd0 25 +ksmd 26 +ksmd 26 +ksmd 26 +fsnotify_ 27 +fsnotify_ 27 +fsnotify_ 27 +ecryptfs- 28 +ecryptfs- 28 +ecryptfs- 28 +crypto 29 +crypto 29 +crypto 29 +kthrotld 40 +kthrotld 40 +kthrotld 40 +kworker/u 41 +kworker/u 41 +kworker/u 41 +scsi_eh_0 42 +scsi_eh_0 42 +scsi_eh_0 42 +scsi_eh_1 43 +scsi_eh_1 43 +scsi_eh_1 43 +binder 45 +binder 45 +binder 45 +deferwq 65 +deferwq 65 +deferwq 65 +charger_m 66 +charger_m 66 +charger_m 66 +jbd2/vda- 170 +jbd2/vda- 170 +jbd2/vda- 170 +ext4-dio- 191 +ext4-dio- 191 +ext4-dio- 191 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-f 299 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +upstart-u 321 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +udevd 323 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +dbus-daem 346 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rs:main 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +rsyslogd 383 +kpsmoused 421 +kpsmoused 421 +kpsmoused 421 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +upstart-s 598 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 795 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 798 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 809 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 811 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +getty 816 +acpid 824 +acpid 824 +acpid 824 +acpid 824 +acpid 824 +acpid 824 +acpid 824 +acpid 824 +acpid 824 +acpid 824 +acpid 824 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +cron 826 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +atd 827 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +sshd 911 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +getty 918 +kauditd 928 +kauditd 928 +kauditd 928 +flush-253 1082 +flush-253 1082 +flush-253 1082 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +sshd 1084 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +console-k 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gmain 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +gdbus 1087 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +bash 1168 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +dnsmasq 2746 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +docker 8881 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8890 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +udevd 8899 +kworker/0 8934 +kworker/0 8934 +kworker/0 8934 +kworker/0 8942 +kworker/0 8942 +kworker/0 8942 +kworker/0 8976 +kworker/0 8976 +kworker/0 8976 +kworker/0 9030 +kworker/0 9030 +kworker/0 9030 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +lsof 9046 +tail 9047 +tail 9047 +tail 9047 +tail 9047 +tail 9047 +tail 9047 +tail 9047 +tail 9047 +tail 9047 +tail 9047 +tr 9048 +tr 9048 +tr 9048 +tr 9048 +tr 9048 +tr 9048 +tr 9048 +tr 9048 +tr 9048 +cut 9049 +cut 9049 +cut 9049 +cut 9049 +cut 9049 +cut 9049 +cut 9049 +cut 9049 +cut 9049 +lsof 9050 +lsof 9050 +lsof 9050 +lsof 9050 +lsof 9050 +lsof 9050 +lsof 9050 +lsof 9050 diff --git a/main.go b/main.go index adc03e7..59882bf 100644 --- a/main.go +++ b/main.go @@ -76,6 +76,7 @@ func main() { PGBOUNCER: &PgBouncer{ Address: parser.Get(PGBOUNCER) }, POSTGRES: &PostgreSQLStats{ Uri: parser.Get(POSTGRES) }, NGINX: &Nginx{ Address: parser.Get(NGINX) }, + FILES: &Files{}, } mh := &MetricHandler{}