diff --git a/mbtk/mbtk_logd/main.c b/mbtk/mbtk_logd/main.c
index d2ba2b8..142ce13 100755
--- a/mbtk/mbtk_logd/main.c
+++ b/mbtk/mbtk_logd/main.c
@@ -31,6 +31,7 @@
 #define mbtk_log(...)
 #endif
 
+int emmc_pro = -1;
 
 #define    MAX_BUFFER_SIZE (8*1024)
 #define    MAX_SLEEP_TIME 2147483647
@@ -49,7 +50,7 @@
 
 static void signal_handler(int signum)
 {
-    printf("Received SIGTERM signal, fflush buffer");
+    printf("Received SIGTERM signal, fflush buffer\n");
     if(fcntl(tmp_syslog_fd, F_GETFL) != -1 && sys_globalPtr !=NULL )
     {
         if(write(tmp_syslog_fd, sys_globalPtr, sys_len) < 0)
@@ -159,7 +160,7 @@
         json_object_object_get_ex(datajson, "enable", &listjson);
         entry->enable = json_object_get_int(listjson);
         mbtk_log("enable: %d\n", entry->enable);
-
+        
         json_object_object_get_ex(datajson, "name", &listjson);
         entry->name = (char*)json_object_get_string(listjson);
         printf("cmdval: %s\n", entry->name);
@@ -168,6 +169,10 @@
         entry->out_path = (char*)json_object_get_string(listjson);
         mbtk_log("cmdval: %s\n", entry->out_path);
 
+        json_object_object_get_ex(datajson, "emmc_protect", &listjson);
+        emmc_pro = json_object_get_int(listjson);
+        printf("emmc_pro enable: %d\n", emmc_pro);
+        
         json_object_object_get_ex(datajson, "log_stream", &listjson);
         if (listjson) {
             entry->ip = (char*)json_object_get_string(listjson);
