diff --git a/Core/src/org/sleuthkit/autopsy/coreutils/Installer.java b/Core/src/org/sleuthkit/autopsy/coreutils/Installer.java
index b934fcf82a..b98660ae08 100644
--- a/Core/src/org/sleuthkit/autopsy/coreutils/Installer.java
+++ b/Core/src/org/sleuthkit/autopsy/coreutils/Installer.java
@@ -54,6 +54,14 @@ public class Installer extends ModuleInstall {
autopsyLogger.log(Level.INFO, "Application name: " + Version.getName()
+ ", version: " + Version.getVersion() + ", build: " + Version.getBuildType());
+
+ autopsyLogger.log(Level.INFO, "os.name: " + System.getProperty("os.name"));
+ autopsyLogger.log(Level.INFO, "os.arch: " + System.getProperty("os.arch"));
+ autopsyLogger.log(Level.INFO, "PID: " + PlatformUtil.getPID());
+ autopsyLogger.log(Level.INFO, "Process Virtual Memory Used: " + PlatformUtil.getProcessVirtualMemoryUsed());
+
+
+
}
@Override
diff --git a/Core/src/org/sleuthkit/autopsy/coreutils/PlatformUtil.java b/Core/src/org/sleuthkit/autopsy/coreutils/PlatformUtil.java
index 321583a160..834e03955c 100644
--- a/Core/src/org/sleuthkit/autopsy/coreutils/PlatformUtil.java
+++ b/Core/src/org/sleuthkit/autopsy/coreutils/PlatformUtil.java
@@ -31,6 +31,7 @@ import java.util.ArrayList;
import java.util.List;
import javax.swing.filechooser.FileSystemView;
import org.hyperic.sigar.Sigar;
+import org.hyperic.sigar.SigarLoader;
import org.openide.modules.InstalledFileLocator;
import org.openide.modules.Places;
import org.sleuthkit.autopsy.casemodule.LocalDisk;
@@ -398,11 +399,14 @@ public class PlatformUtil {
try {
if (sigar == null) {
- sigar = new Sigar();
+ sigar = org.sleuthkit.autopsy.corelibs.SigarLoader.getSigar();
+ }
+ if (sigar != null) {
+ pid = sigar.getPid();
+ }
+ else {
+ System.out.println("Can't get PID");
}
- pid = sigar.getPid();
- } catch (UnsatisfiedLinkError e) {
- System.out.println("Can't load library and get PID, " + e.toString());
} catch (Exception e) {
System.out.println("Can't get PID, " + e.toString());
}
@@ -421,16 +425,14 @@ public class PlatformUtil {
try {
if (sigar == null) {
- sigar = new Sigar();
+ sigar = org.sleuthkit.autopsy.corelibs.SigarLoader.getSigar();
}
if (sigar == null || pid == -1) {
+ System.out.println("Can't get virt mem used");
return -1;
}
-
virtMem = sigar.getProcMem(pid).getSize();
- } catch (UnsatisfiedLinkError e) {
- System.out.println("Can't load library and get virt mem used, " + e.toString());
} catch (Exception e) {
System.out.println("Can't get virt mem used, " + e.toString());
}
diff --git a/Core/src/org/sleuthkit/autopsy/ingest/IngestMonitor.java b/Core/src/org/sleuthkit/autopsy/ingest/IngestMonitor.java
index 6eae9ba6d0..2bec6c5308 100644
--- a/Core/src/org/sleuthkit/autopsy/ingest/IngestMonitor.java
+++ b/Core/src/org/sleuthkit/autopsy/ingest/IngestMonitor.java
@@ -217,6 +217,7 @@ public class IngestMonitor {
final MemoryUsage nonHeap = memoryManager.getNonHeapMemoryUsage();
MONITOR_LOGGER.log(Level.INFO, "Java heap memory: " + heap.toString() + ", Java non-heap memory: " + nonHeap.toString());
+ MONITOR_LOGGER.log(Level.INFO, "Process Virtual Memory: " + PlatformUtil.getProcessVirtualMemoryUsed());
}
}
diff --git a/CoreLibs/build-mac.xml b/CoreLibs/build-mac.xml
index b59824ca6a..3bf78e6244 100644
--- a/CoreLibs/build-mac.xml
+++ b/CoreLibs/build-mac.xml
@@ -4,9 +4,9 @@
-
+
diff --git a/CoreLibs/build-unix.xml b/CoreLibs/build-unix.xml
index cebccd0f69..2cf1d3442f 100644
--- a/CoreLibs/build-unix.xml
+++ b/CoreLibs/build-unix.xml
@@ -4,9 +4,9 @@
-
+
diff --git a/CoreLibs/build-windows.xml b/CoreLibs/build-windows.xml
index c1f1f5cec7..ab033b730f 100644
--- a/CoreLibs/build-windows.xml
+++ b/CoreLibs/build-windows.xml
@@ -4,9 +4,9 @@
-
+
diff --git a/CoreLibs/nbproject/project.properties b/CoreLibs/nbproject/project.properties
index 8ede94414f..e800cc1427 100644
--- a/CoreLibs/nbproject/project.properties
+++ b/CoreLibs/nbproject/project.properties
@@ -4,6 +4,7 @@ file.reference.ant-launcher-1.8.2.jar=release/modules/ext/ant-launcher-1.8.2.jar
file.reference.AppleJavaExtensions-1.4.jar=release/modules/ext/AppleJavaExtensions-1.4.jar
file.reference.avalon-framework-4.1.3.jar=release/modules/ext/avalon-framework-4.1.3.jar
file.reference.commons-codec-1.5.jar=release/modules/ext/commons-codec-1.5.jar
+file.reference.commons-io-2.4.jar=release/modules/ext/commons-io-2.4.jar
file.reference.commons-lang-2.4.jar=release/modules/ext/commons-lang-2.4.jar
file.reference.commons-logging-1.1.1.jar=release/modules/ext/commons-logging-1.1.1.jar
file.reference.dom4j-1.6.1.jar=release/modules/ext/dom4j-1.6.1.jar
@@ -28,7 +29,6 @@ file.reference.poi-ooxml-schemas-3.8.jar=release/modules/ext/poi-ooxml-schemas-3
file.reference.poi-scratchpad-3.8.jar=release/modules/ext/poi-scratchpad-3.8.jar
file.reference.reflections-0.9.8.jar=release/modules/ext/reflections-0.9.8.jar
file.reference.servlet-api-2.5.jar=release/modules/ext/servlet-api-2.5.jar
-file.reference.sigar-1.6.4.jar=release/modules/ext/sigar-1.6.4.jar
file.reference.slf4j-api-1.6.1.jar=release/modules/ext/slf4j-api-1.6.1.jar
file.reference.slf4j-simple-1.6.1.jar=release/modules/ext/slf4j-simple-1.6.1.jar
file.reference.stax-api-1.0.1.jar=release/modules/ext/stax-api-1.0.1.jar
diff --git a/CoreLibs/nbproject/project.xml b/CoreLibs/nbproject/project.xml
index 9f7994be9c..8d4f053403 100644
--- a/CoreLibs/nbproject/project.xml
+++ b/CoreLibs/nbproject/project.xml
@@ -661,7 +661,6 @@
org.hyperic.sigar.util
org.hyperic.sigar.vmware
org.hyperic.sigar.win32
- org.hyperic.sigar.win32.test
org.jbundle.thin.base.screen.jcalendarbutton
org.openxmlformats.schemas.drawingml.x2006.chart
org.openxmlformats.schemas.drawingml.x2006.chart.impl
@@ -693,6 +692,7 @@
org.reflections.serializers
org.reflections.util
org.reflections.vfs
+ org.sleuthkit.autopsy.corelibs
org.slf4j
org.slf4j.helpers
org.slf4j.impl
@@ -822,18 +822,22 @@
ext/AppleJavaExtensions-1.4.jar
release/modules/ext/AppleJavaExtensions-1.4.jar
-
- ext/jfxrt.jar
- release/modules/ext/jfxrt.jar
-
ext/sigar-1.6.4.jar
release/modules/ext/sigar-1.6.4.jar
+
+ ext/jfxrt.jar
+ release/modules/ext/jfxrt.jar
+
ext/gson-1.4.jar
release/modules/ext/gson-1.4.jar
+
+ ext/sigar-1.6.4-sources.jar
+ release/modules/ext/sigar-1.6.4-sources.jar
+
ext/servlet-api-2.5.jar
release/modules/ext/servlet-api-2.5.jar
diff --git a/CoreLibs/src/org/sleuthkit/autopsy/corelibs/SigarLoader.java b/CoreLibs/src/org/sleuthkit/autopsy/corelibs/SigarLoader.java
new file mode 100644
index 0000000000..876fa2c8fb
--- /dev/null
+++ b/CoreLibs/src/org/sleuthkit/autopsy/corelibs/SigarLoader.java
@@ -0,0 +1,61 @@
+/*
+ * Autopsy Forensic Browser
+ *
+ * Copyright 2013 Basis Technology Corp.
+ * Contact: carrier sleuthkit org
+ *
+ * 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 org.sleuthkit.autopsy.corelibs;
+
+import java.io.File;
+import org.hyperic.sigar.Sigar;
+
+/**
+ * Wrapper over Sigar instrumentation class to facilitate dll loading.
+ * Our setup bypasses Sigar library loader which does not work well for netbeans environment
+ * We are responsible for loading the library ourselves.
+ */
+public class SigarLoader {
+
+ private static volatile Sigar sigar;
+
+ static {
+ //bypass the process of validation/loading of the library by sigar jar
+ System.setProperty("org.hyperic.sigar.path", "-");
+ //System.setProperty(org.hyperic.sigar.SigarLoader.PROP_SIGAR_JAR_NAME, "sigar-1.6.4.jar");
+ }
+
+ public static Sigar getSigar() {
+ if (sigar == null) {
+ synchronized (SigarLoader.class) {
+
+ try {
+ //rely on netbeans / jna to locate the lib variation for architecture/OS
+ System.loadLibrary("libsigar");
+ sigar = new Sigar();
+ sigar.enableLogging(false); //forces a test
+
+ } catch (UnsatisfiedLinkError ex) {
+ System.out.println("Error loading sigar library" + ex.toString());
+ }
+ catch (Exception ex) {
+ System.out.println("Error loading sigar library" + ex.toString());
+ }
+ }
+ }
+
+ return sigar;
+ }
+}
diff --git a/thirdparty/sigar/1.6.4/sigar-native.zip b/thirdparty/sigar/1.6.4/sigar-native.zip
index 67a92c423c..b87e9b1d93 100644
Binary files a/thirdparty/sigar/1.6.4/sigar-native.zip and b/thirdparty/sigar/1.6.4/sigar-native.zip differ