123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #include "logthread.h"
- LogThread::LogThread(QObject *parent) :
- QThread(parent)
- {
- keep = false;
- dataList.clear();
- wrongList.clear();
- // printf("logthread init\n");
- QDir dir("/var/log/usky");
- if(!dir.exists())
- dir.mkdir("/var/log/usky");
- file = new QFile("/var/log/usky/jd_video-"+QDate::currentDate().toString("yyyyMMdd")+".log");
- wfile = new QFile("/var/log/usky/err_video.log");
- day = QDate::currentDate().day();
- }
- void LogThread::appendData(QString data)
- {
- dataList.append(data);
- }
- void LogThread::appendWrongData(QString data)
- {
- wrongList.append(data);
- }
- void LogThread::stop()
- {
- keep = false;
- }
- void LogThread::run()
- {
- // printf("log thread start\n");
- QString log = QString("ytCamCore start at %1.\r\n").arg(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss.zzz"));
- printf("%s\n",log.toUtf8().data());
- if(file->open(QIODevice::ReadWrite|QIODevice::Append|QIODevice::Text)){
- file->write(log.toUtf8());
- file->close();
- }
- keep = true;
- while(keep){
- if(dataList.length()>0){
- if(day!=QDate::currentDate().day()){
- day = QDate::currentDate().day();
- file = new QFile("/var/log/usky/jd_video-"+QDate::currentDate().toString("yyyyMMdd")+".log");
- }
- if(file->open(QIODevice::ReadWrite|QIODevice::Append|QIODevice::Text)){
- while(dataList.length()>0){
- file->write(dataList.first().toUtf8());
- file->write("\r\n");
- dataList.removeFirst();
- usleep(1000);
- }
- file->close();
- }
- }
- if(wrongList.length()>0){
- if(wfile->open(QIODevice::ReadWrite|QIODevice::Append|QIODevice::Text)){
- while(wrongList.length()>0){
- wfile->write(wrongList.first().toUtf8());
- wfile->write("\r\n");
- wrongList.removeFirst();
- usleep(1000);
- }
- wfile->close();
- }
- }
- usleep(50000);
- }
- }
|