Added logging function to OsdUtil so we can have a system log that can be used from outside of SdServer.
This commit is contained in:
@@ -33,14 +33,18 @@ import android.content.ServiceConnection;
|
|||||||
import android.content.pm.PackageInfo;
|
import android.content.pm.PackageInfo;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
|
import android.os.Environment;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
|
import android.text.format.Time;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
|
|
||||||
import org.apache.http.conn.util.InetAddressUtils;
|
import org.apache.http.conn.util.InetAddressUtils;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileWriter;
|
||||||
import java.net.InetAddress;
|
import java.net.InetAddress;
|
||||||
import java.net.NetworkInterface;
|
import java.net.NetworkInterface;
|
||||||
import java.util.AbstractList;
|
import java.util.AbstractList;
|
||||||
@@ -197,6 +201,7 @@ public class OsdUtil {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Display a Toast message on screen.
|
* Display a Toast message on screen.
|
||||||
|
*
|
||||||
* @param msg - message to display.
|
* @param msg - message to display.
|
||||||
*/
|
*/
|
||||||
public void showToast(final String msg) {
|
public void showToast(final String msg) {
|
||||||
@@ -252,4 +257,58 @@ public class OsdUtil {
|
|||||||
mContext.startActivity(myIntent);
|
mContext.startActivity(myIntent);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Write data to SD card - writes to data log file unless alarm=true,
|
||||||
|
* in which case writes to alarm log file.
|
||||||
|
*/
|
||||||
|
public void writeToLogFile(String fname, String msgStr) {
|
||||||
|
Log.v(TAG, "writeToLogFile(" + fname + "," + msgStr + ")");
|
||||||
|
showToast("Logging " + msgStr);
|
||||||
|
Time tnow = new Time(Time.getCurrentTimezone());
|
||||||
|
tnow.setToNow();
|
||||||
|
String dateStr = tnow.format("%Y-%m-%d");
|
||||||
|
|
||||||
|
fname = fname + "_" + dateStr + ".txt";
|
||||||
|
// Open output directory on SD Card.
|
||||||
|
if (isExternalStorageWritable()) {
|
||||||
|
try {
|
||||||
|
FileWriter of = new FileWriter(getDataStorageDir().toString()
|
||||||
|
+ "/" + fname, true);
|
||||||
|
if (msgStr != null) {
|
||||||
|
String dateTimeStr = tnow.format("%Y-%m-%d %H:%M:%S");
|
||||||
|
Log.v(TAG, "writing msgStr");
|
||||||
|
of.append(dateTimeStr+" : "+msgStr+"<br/>\n");
|
||||||
|
}
|
||||||
|
of.close();
|
||||||
|
} catch (Exception ex) {
|
||||||
|
Log.e(TAG, "writeToLogFile - error " + ex.toString());
|
||||||
|
showToast("ERROR Writing to Log File");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
Log.e(TAG, "ERROR - Can not Write to External Folder");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Checks if external storage is available for read and write */
|
||||||
|
public boolean isExternalStorageWritable() {
|
||||||
|
String state = Environment.getExternalStorageState();
|
||||||
|
if (Environment.MEDIA_MOUNTED.equals(state)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public File getDataStorageDir() {
|
||||||
|
// Get the directory for the user's public directory.
|
||||||
|
File file =
|
||||||
|
new File(Environment.getExternalStorageDirectory()
|
||||||
|
, "OpenSeizureDetector");
|
||||||
|
if (!file.mkdirs()) {
|
||||||
|
Log.e(TAG, "Directory not created");
|
||||||
|
}
|
||||||
|
return file;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -79,6 +79,7 @@ import org.json.JSONArray;
|
|||||||
public class SdServer extends Service implements SdDataReceiver {
|
public class SdServer extends Service implements SdDataReceiver {
|
||||||
// Notification ID
|
// Notification ID
|
||||||
private int NOTIFICATION_ID = 1;
|
private int NOTIFICATION_ID = 1;
|
||||||
|
private final String SYSLOG = "SysLog";
|
||||||
|
|
||||||
private NotificationManager mNM;
|
private NotificationManager mNM;
|
||||||
|
|
||||||
@@ -614,6 +615,7 @@ public class SdServer extends Service implements SdDataReceiver {
|
|||||||
*/
|
*/
|
||||||
protected void startWebServer() {
|
protected void startWebServer() {
|
||||||
Log.v(TAG, "startWebServer()");
|
Log.v(TAG, "startWebServer()");
|
||||||
|
mUtil.writeToLogFile(SYSLOG,"Start Web Server.\n");
|
||||||
if (webServer == null) {
|
if (webServer == null) {
|
||||||
webServer = new SdWebServer(getApplicationContext(), getDataStorageDir(), mSdData);
|
webServer = new SdWebServer(getApplicationContext(), getDataStorageDir(), mSdData);
|
||||||
try {
|
try {
|
||||||
|
|||||||
Reference in New Issue
Block a user