diff --git a/lib/apiserver/routers/smstools-config.js b/lib/apiserver/routers/smstools-config.js
index 8afc729..4f1b690 100644
--- a/lib/apiserver/routers/smstools-config.js
+++ b/lib/apiserver/routers/smstools-config.js
@@ -149,6 +149,17 @@ function pageInstallConfig(req, res) {
     });
 }
 
+function pageSmsdLog(req, res) {
+    const maxLines = (req.params.maxLines || 200);
+    childProcess.exec(`tail -n ${maxLines} /var/log/smsd/smsd.log | tac`, (err, stdout, stderr) => {
+        res.json({
+            err,
+            stdout,
+            stderr,
+        });
+    });
+}
+
 router.get('/', pageIndex);
 router.get('/generate', pageGenerate);
 router.get('/modems', pageModemList);
@@ -158,3 +169,5 @@ router.post('/modem/set/:modemName', bodyParser.json({ type: '*/json' }), pageMo
 router.post('/modem/set-single-value/:modemName', bodyParser.json({ type: '*/json' }), pageModemSetSingleValue);
 router.get('/modem/delete/:modemName', pageModemDelete);
 router.get('/install-config', pageInstallConfig);
+router.get('/smsd-log/:maxLines', pageSmsdLog);
+router.get('/smsd-log', pageSmsdLog);
\ No newline at end of file