diff --git a/KelvinDashboardService/DapLogReader.cpp b/KelvinDashboardService/DapLogReader.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..83a97f46f45e3eda3242b623ff3e1ec923b1d504
--- /dev/null
+++ b/KelvinDashboardService/DapLogReader.cpp
@@ -0,0 +1,25 @@
+#include "DapLogReader.h"
+
+DapLogReader::DapLogReader(QObject *parent) : QObject(parent)
+{
+
+}
+
+QList<QString> DapLogReader::request(int aiTimeStamp, int aiRowCount)
+{
+    QList<QString> str;
+    QByteArray result;
+    QProcess process;
+    process.start(QString("%1 print_log ts_after %2 limit %3").arg("/home/andrey/Demlabs/build-kelvin-node/kelvin-node-cli").arg(aiTimeStamp).arg(aiRowCount));
+    process.waitForFinished(-1);
+    result = process.readAll();
+
+    if(result.isEmpty())
+        qDebug() << "FALSE";
+    else
+    {
+        qDebug() << "TRUE";
+        qDebug() << QString::fromLatin1(result);
+    }
+    return str;
+}
diff --git a/KelvinDashboardService/DapLogReader.h b/KelvinDashboardService/DapLogReader.h
new file mode 100644
index 0000000000000000000000000000000000000000..6362047b8067f104b61e1842327e5c1444393193
--- /dev/null
+++ b/KelvinDashboardService/DapLogReader.h
@@ -0,0 +1,23 @@
+#ifndef DAPLOGREADER_H
+#define DAPLOGREADER_H
+
+#include <QObject>
+#include <QString>
+#include <QProcess>
+#include <QDebug>
+
+class DapLogReader : public QObject
+{
+    Q_OBJECT
+
+public:
+    explicit DapLogReader(QObject *parent = nullptr);
+
+signals:
+
+public slots:
+
+    QList<QString> request(int aiTimeStamp, int aiRowCount);
+};
+
+#endif // DAPLOGREADER_H
diff --git a/KelvinDashboardService/KelvinDashboardService.pro b/KelvinDashboardService/KelvinDashboardService.pro
index 2fecb7026ec2f05b6798b88948c4d95b7dea139c..6f8faa37276801799f612ea58d8d4bd3f0e434d5 100755
--- a/KelvinDashboardService/KelvinDashboardService.pro
+++ b/KelvinDashboardService/KelvinDashboardService.pro
@@ -40,12 +40,14 @@ SOURCES += \
         main.cpp \
     DapChainDashboardService.cpp \
     DapChainNode.cpp \
-    DapChainNodeCache.cpp
+    DapChainNodeCache.cpp \
+    DapLogReader.cpp
 
 HEADERS += \
     DapChainDashboardService.h \
     DapChainNode.h \
-    DapChainNodeCache.h
+    DapChainNodeCache.h \
+    DapLogReader.h
 
 include (../libdap-qt/libdap-qt.pri)
 include (../libKelvinDashboardCommon/libKelvinDashboardCommon.pri)
diff --git a/KelvinDashboardService/main.cpp b/KelvinDashboardService/main.cpp
index 4bbb8de1c27cb7fee8232bafee5f0609a4f2a268..f83eef8b7e7baa702fbabc6283764060a0e5cef8 100755
--- a/KelvinDashboardService/main.cpp
+++ b/KelvinDashboardService/main.cpp
@@ -5,6 +5,7 @@
 #include "DapHalper.h"
 #include "DapChainDashboardService.h"
 #include "DapLogger.h"
+#include "DapLogReader.h"
 
 int main(int argc, char *argv[])
 {
@@ -26,7 +27,7 @@ int main(int argc, char *argv[])
     a.setOrganizationName("DEMLABS");
     a.setOrganizationDomain("demlabs.com");
     a.setApplicationName("KelvinDashboardService");
-    
+
     DapLogger dapLogger;
     /// TODO: The code is commented out at the time of developing the logging strategy in the project
 //#ifndef QT_DEBUG
@@ -34,7 +35,10 @@ int main(int argc, char *argv[])
         dapLogger.setLogFile(QString("/opt/%1/log/%2Service.log").arg(QString(DAP_BRAND)).arg(DAP_BRAND));
     #endif
 //#endif
-        
+        DapLogReader dapLogReader;
+        auto var = dapLogReader.request(0, 100);
+        auto var1 = dapLogReader.request(1, 100);
+        auto var2 = dapLogReader.request(2, 100);
     // Creating the main application object
     DapChainDashboardService service;
     service.start();