# # MIT License # # Copyright (c) 2010 - 2021 The OSHI Project Contributors: https://github.com/oshi/oshi/graphs/contributors # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in all # copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # SOFTWARE. # # Some containers enable alternate locations for the Linux /proc filesystem # to provide container-level output in preference to system-level output. # The /proc filesystem location oshi.util.proc.path=/proc # See https://www.kernel.org/doc/Documentation/cpu-freq/user-guide.txt oshi.cpu.freq.path=/sys/devices/system/cpu # The WMI query timeout in milliseconds # Default is -1, no timeout oshi.util.wmi.timeout=-1 # Whether to perform WMI queries for command lines in a batch for all running # processes. Individual WMI queries for the command line take about 50ms while # querying the entire process list takes about 200ms. If you regularly expect # to query command lines for more than a few processes this should be enabled # for better performance. If you only rarely query command lines, leaving this # disabled will be faster and conserve some resources. Defaults to false. oshi.os.windows.commandline.batch=false # Whether to update the OSProcess state on Windows to SUSPENDED if all its # threads are suspended. This requires querying thread states and can impact # performance (Process list queries can take much longer) but if desired is # better done once than for each process. Users may still determine this value # themselves by querying thread details, but this method is extremely slow if # done for every process. Enabling this will provide a more efficient (but # still slow) update if this information is of value. Defaults to false. oshi.os.windows.procstate.suspended=false # Whether to attempt to fetch Windows performance counter data for processes # and threads from HKEY_PERFORMANCE_DATA in the registry. Windows docs say # to use the PDH API in preference to this, but the multiple native calls # with JNA result in slower performance than a one-time grab of the data # from the registry. Unfortunately, registry calls are more subject to # problems with registry corruption, counter deletion when changing language # settings, and other factors. Although the code will recover from failure # to read these counters from the registry, it may be preferable to disable # this attempt if failure is known/expected. Setting this property to false # will skip the registry check and use the API-recommended (but slower) # performance counter API (or WMI as a backup). oshi.os.windows.hkeyperfdata=true # On macOS, Linux, and Unix systems, the default getSessions() method on the # OperatingSystem interface uses native code (see {@code man getutxent}) that # is not thread safe. OSHI's use of this code is synchronized and may be used # in a multi-threaded environment without introducing any additional conflicts. # Users should note, however, that other operating system code may access the # same native code. # # The oshi.driver.unix.Who#queryWho() method produces similar output parsing # the output of the Posix-standard "who" command, and may internally employ # reentrant code on some platforms. Setting this configuration to true will # use the command-line variant. Defaults to false. oshi.os.unix.whoCommand=false # The name of the System event log containing bootup event IDs 12 and 6005. # # This is used for a one-time calculation of system boot time that should be # consistent across process runs regardless of sleep/hibernate cycles, at # the small cost of ~250ms latency reading upon WindowsOperatingSystem # initialization. # # If the specified log is the empty string, or doesn't contain a bootup event, # boot time will be calculated by subtracting up time from current time. This # may vary by up to a millisecond between program executions and does not # properly account for sleep/hibernate cycles, but when using the empty string # is fast and may be preferred if only approximate boot time is desired. # # If a non-empty invalid log name is specified, the name "Application" will # be used. The default is System oshi.os.windows.eventlog=System # Memoizer default expiration in milliseconds (return values will be cached this long) # Must be positive (negative value will never refresh) # Should be less than 1 second # Default is 300 milliseconds oshi.util.memoizer.expiration=300 # FileSystem types which are network-based and should be excluded from local-only lists oshi.network.filesystem.types=afs,cifs,smbfs,sshfs,ncpfs,ncp,nfs,nfs4,gfs,gds2,glusterfs # Linux defines a set of virtual file systems # "anon_inodefs", anonymous inodes - inodes without filenames # "autofs", automounter file system, used by Linux, Solaris, FreeBSD # "bdev", keep track of block_device vs major/minor mapping # "binfmt_misc", Binary format support file system # "bpf", Virtual filesystem for Berkeley Paket Filter # "cgroup", Cgroup file system # "cgroup2", Cgroup file system # "configfs", Config file system # "cpuset", pseudo-filesystem interface to the kernel cpuset mechanism # "dax", Direct Access (DAX) can be used on memory-backed block devices # "debugfs", Debug file system # "devpts", Dev pseudo terminal devices file system # "devtmpfs", Dev temporary file system # "drm", Direct Rendering Manager # "ecryptfs", POSIX-compliant enterprise cryptographic filesystem for Linux # "efivarfs", (U)EFI variable filesystem # "fuse", // # NOTE: FUSE's fuseblk is not evalued because used as file system # representation of a FUSE block storage # "fuseblk" FUSE block file system # "fusectl", FUSE control file system # "hugetlbfs", Huge pages support file system # "inotifyfs", support inotify # "mqueue", Message queue file system # "nfsd", NFS file system # "overlay", Overlay file system https://wiki.archlinux.org/index.php/Overlay_filesystem # "pipefs", for pipes but only visible inside kernel # "proc", Proc file system, used by Linux and Solaris # "pstore", Pstore file system # "ramfs", Old filesystem used for RAM disks # "rootfs", Minimal fs to support kernel boot # "rpc_pipefs", Sun RPC file system # "securityfs", Kernel security file system # "selinuxfs", SELinux file system # "sunrpc", Sun RPC file system # "sysfs", SysFS file system # "systemd-1", Systemd file system # "tmpfs", Temporary file system # NOTE: tmpfs is evaluated apart, because Linux, Solaris, FreeBSD use it for # RAMdisks # "tracefs", thin stackable file system for capturing file system traces # "usbfs", removed in linux 3.5 but still seen in some systems # FreeBSD / Solaris defines a set of virtual file systems # "procfs", Proc file system # "devfs", Dev temporary file system # "ctfs", Contract file system # "fdescfs", fd # "objfs", Object file system # "mntfs", Mount file system # "sharefs", Share file system # "lofs" Library file system # "SquashFS" read-only filesystem used by snap on eg. Ubuntu oshi.pseudo.filesystem.types=anon_inodefs,autofs,bdev,binfmt_misc,bpf,cgroup,cgroup2,configfs,cpuset,dax,debugfs,devpts,devtmpfs,drm,ecryptfs,efivarfs,fuse,fusectl,hugetlbfs,inotifyfs,mqueue,nfsd,overlay,proc,pstore,rootfs,rpc_pipefs,securityfs,selinuxfs,sunrpc,sysfs,systemd-1,tracefs,usbfs,procfs,devfs,ctfs,fdescfs,objfs,mntfs,sharefs,lofs,squashfs # Paths and volumes to exclude from FileSystem listings on these operating systems. # These are excluded if they match using PathMatcher syntax. See # https://docs.oracle.com/javase/7/docs/api/java/nio/file/FileSystem.html#getPathMatcher(java.lang.String) # The "glob:" syntax is automatically added unless another syntax (regex:) is specified. # Similar syntax may be used for "includes" which take precedence over excludes. # Note: glob:* mathches all paths not starting with / oshi.os.aix.filesystem.path.excludes=/run**,/sys**,/dev,/proc**,* oshi.os.freebsd.filesystem.path.excludes=/system**,/tmp**,/dev,/dev/fd** oshi.os.freebsd.filesystem.volume.excludes=rpool* oshi.os.linux.filesystem.path.excludes=/run**,/sys**,/proc**,/dev,**/shm oshi.os.mac.filesystem.volume.excludes=devfs,map * oshi.os.openbsd.filesystem.path.excludes=/tmp**,/dev oshi.os.solaris.filesystem.path.excludes=/system**,/tmp**,/dev,/dev/fd** oshi.os.solaris.filesystem.volume.excludes=rpool