Package org.hyperic.sigar

Examples of org.hyperic.sigar.FileSystemUsage


    public void output(FileSystem fs) throws SigarException {
        long used, avail, total, pct;

        try {
            FileSystemUsage usage;
            if (fs instanceof NfsFileSystem) {
                NfsFileSystem nfs = (NfsFileSystem)fs;
                if (!nfs.ping()) {
                    println(nfs.getUnreachableMessage());
                    return;
                }
            }
            usage = this.sigar.getFileSystemUsage(fs.getDirName());

            used = usage.getTotal() - usage.getFree();
            avail = usage.getAvail();
            total = usage.getTotal();

            pct = (long)(usage.getUsePercent() * 100);
        } catch (SigarException e) {
            //e.g. on win32 D:\ fails with "Device not ready"
            //if there is no cd in the drive.
            used = avail = total = pct = 0;
        }
View Full Code Here


            assertLengthTrace("DevName", fs.getDevName());
            assertLengthTrace("DirName", fs.getDirName());
            assertLengthTrace("TypeName", fs.getTypeName());
            assertLengthTrace("SysTypeName", fs.getSysTypeName());

            FileSystemUsage usage;

            try {
                usage = sigar.getFileSystemUsage(fs.getDirName());
            } catch (SigarException e) {
                if (fs.getType() == FileSystem.TYPE_LOCAL_DISK) {
                    throw e;
                }
                //else ok, e.g. floppy drive on windows
                continue;
            }

            switch (fs.getType()) {
              case FileSystem.TYPE_LOCAL_DISK:
                assertGtZeroTrace("  Total", usage.getTotal());
                //possible machines have full filesystems
                assertGtEqZeroTrace("  Free", usage.getFree());
                assertGtEqZeroTrace("  Avail", usage.getAvail());
                assertGtEqZeroTrace("   Used", usage.getUsed());
                double usePercent = usage.getUsePercent() * 100;
                traceln("  Usage=" + usePercent + "%");
                assertTrue(usePercent <= 100.0);
              default:
                traceln("  DiskReads=" + usage.getDiskReads());
                traceln("  DiskWrites=" + usage.getDiskWrites());
            }
        }

        try {
            sigar.getFileSystemUsage("T O T A L L Y B O G U S");
View Full Code Here

        printf(items);
    }

    public void output(FileSystem fs) throws SigarException {
        FileSystemUsage usage =
            this.sigar.getFileSystemUsage(fs.getDirName());

        ArrayList items = new ArrayList();

        items.add(fs.getDevName());
        items.add(fs.getDirName());
        items.add(String.valueOf(usage.getDiskReads()));
        items.add(String.valueOf(usage.getDiskWrites()));

        if (usage.getDiskReadBytes() == Sigar.FIELD_NOTIMPL) {
            items.add("-");
            items.add("-");
        }
        else {
            items.add(Sigar.formatSize(usage.getDiskReadBytes()));
            items.add(Sigar.formatSize(usage.getDiskWriteBytes()));
        }

        if (usage.getDiskQueue() == Sigar.FIELD_NOTIMPL) {
            items.add("-");
        }
        else {
            items.add(String.valueOf(usage.getDiskQueue()));
        }
        if (usage.getDiskServiceTime() == Sigar.FIELD_NOTIMPL) {
            items.add("-");
        }
        else {
            items.add(svctm(usage.getDiskServiceTime()));
        }

        printf(items);
    }
View Full Code Here

                for (FileSystem fs : sigarService.sigar().getFileSystemList()) {
                    if (!FileSystems.SUPPORTED_FS_TYPE.apply(fs)) {
                        continue;
                    }
                    try {
                        FileSystemUsage usage = sigarService.sigar().getFileSystemUsage(fs.getDirName());
                        size = setOrIncrementBy(size, usage.getTotal() * 1024);
                        used = setOrIncrementBy(used, usage.getUsed());
                        available = setOrIncrementBy(available, usage.getAvail() * 1024);
                        reads = setOrIncrementBy(reads, usage.getDiskReads());
                        bytes_read = setOrIncrementBy(bytes_read, usage.getDiskReadBytes());
                        writes = setOrIncrementBy(writes, usage.getDiskWrites());
                        bytes_written = setOrIncrementBy(bytes_written, usage.getDiskWriteBytes());
                    } catch (SigarPermissionDeniedException e) {
                        logger.warn(String.format(
                            "Permission denied: couldn't get file system usage for \"%s\"", fs.getDirName()));
                    }
                }
View Full Code Here

                    // no disk usage possible for rootfs
                    if (!FileSystems.SUPPORTED_FS_TYPE.apply(fs) || "rootfs".equals(fs.getDevName())) {
                        continue;
                    }
                    try {
                        FileSystemUsage usage = sigarService.sigar().getFileSystemUsage(fs.getDirName());
                        diskRefs.add(new NodeFsDiskChildExpression(fs, usage));
                    } catch (SigarPermissionDeniedException e) {
                        logger.warn(String.format(
                            "Permission denied: couldn't get file system usage for \"%s\"", fs.getDirName()));
                    }
View Full Code Here

                    }
                }
                if (fileSystem != null) {
                    info.mount = fileSystem.getDirName();
                    info.dev = fileSystem.getDevName();
                    FileSystemUsage fileSystemUsage = sigar.getFileSystemUsage(fileSystem.getDirName());
                    if (fileSystemUsage != null) {
                        // total/free/available seem to be in megabytes?
                        info.total = fileSystemUsage.getTotal() * 1024;
                        info.free = fileSystemUsage.getFree() * 1024;
                        info.available = fileSystemUsage.getAvail() * 1024;
                        info.diskReads = fileSystemUsage.getDiskReads();
                        info.diskWrites = fileSystemUsage.getDiskWrites();
                        info.diskReadBytes = fileSystemUsage.getDiskReadBytes();
                        info.diskWriteBytes = fileSystemUsage.getDiskWriteBytes();
                        info.diskQueue = fileSystemUsage.getDiskQueue();
                        info.diskServiceTime = fileSystemUsage.getDiskServiceTime();
                    }
                }
            } catch (SigarException e) {
                // failed...
            }
View Full Code Here

TOP

Related Classes of org.hyperic.sigar.FileSystemUsage

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.