blob: e2acd6d40a6bc393446c21a1f0de7ce3b52446a3 [file] [log] [blame]
Matthias Andreas Benkard832a54e2019-01-29 09:27:38 +01001// Copyright 2014 Prometheus Team
2// Licensed under the Apache License, Version 2.0 (the "License");
3// you may not use this file except in compliance with the License.
4// You may obtain a copy of the License at
5//
6// http://www.apache.org/licenses/LICENSE-2.0
7//
8// Unless required by applicable law or agreed to in writing, software
9// distributed under the License is distributed on an "AS IS" BASIS,
10// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11// See the License for the specific language governing permissions and
12// limitations under the License.
13
14// Package procfs provides functions to retrieve system, kernel and process
15// metrics from the pseudo-filesystem proc.
16//
17// Example:
18//
19// package main
20//
21// import (
22// "fmt"
23// "log"
24//
25// "github.com/prometheus/procfs"
26// )
27//
28// func main() {
29// p, err := procfs.Self()
30// if err != nil {
31// log.Fatalf("could not get process: %s", err)
32// }
33//
34// stat, err := p.NewStat()
35// if err != nil {
36// log.Fatalf("could not get process stat: %s", err)
37// }
38//
39// fmt.Printf("command: %s\n", stat.Comm)
40// fmt.Printf("cpu time: %fs\n", stat.CPUTime())
41// fmt.Printf("vsize: %dB\n", stat.VirtualMemory())
42// fmt.Printf("rss: %dB\n", stat.ResidentMemory())
43// }
44//
45package procfs