mirror of
https://github.com/scorpion-26/gBar.git
synced 2024-11-22 03:02:49 +00:00
Add log file
Plus refactoring out the logging.
This commit is contained in:
parent
0e4b877654
commit
16933c24ff
5 changed files with 67 additions and 8 deletions
|
@ -10,6 +10,7 @@ gtk_layer_shell = dependency('gtk-layer-shell-0')
|
||||||
|
|
||||||
headers = [
|
headers = [
|
||||||
'src/Common.h',
|
'src/Common.h',
|
||||||
|
'src/Log.h',
|
||||||
'src/System.h',
|
'src/System.h',
|
||||||
'src/PulseAudio.h',
|
'src/PulseAudio.h',
|
||||||
'src/Widget.h',
|
'src/Widget.h',
|
||||||
|
@ -37,6 +38,8 @@ if get_option('WithSys')
|
||||||
add_global_arguments('-DWITH_SYS', language: 'cpp')
|
add_global_arguments('-DWITH_SYS', language: 'cpp')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
add_global_arguments('-DUSE_LOGFILE', language: 'cpp')
|
||||||
|
|
||||||
pulse = dependency('libpulse')
|
pulse = dependency('libpulse')
|
||||||
|
|
||||||
libgBar = library('gBar',
|
libgBar = library('gBar',
|
||||||
|
@ -48,7 +51,8 @@ libgBar = library('gBar',
|
||||||
'src/BluetoothDevices.cpp',
|
'src/BluetoothDevices.cpp',
|
||||||
'src/Plugin.cpp',
|
'src/Plugin.cpp',
|
||||||
'src/Config.cpp',
|
'src/Config.cpp',
|
||||||
'src/CSS.cpp'
|
'src/CSS.cpp',
|
||||||
|
'src/Log.cpp'
|
||||||
],
|
],
|
||||||
dependencies: [gtk, gtk_layer_shell, pulse],
|
dependencies: [gtk, gtk_layer_shell, pulse],
|
||||||
install: true)
|
install: true)
|
||||||
|
|
|
@ -3,14 +3,9 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
|
#include "Log.h"
|
||||||
|
|
||||||
#define UNUSED [[maybe_unused]]
|
#define UNUSED [[maybe_unused]]
|
||||||
#define LOG(x) std::cout << x << '\n'
|
|
||||||
#define ASSERT(x, log) \
|
|
||||||
if (!(x)) \
|
|
||||||
{ \
|
|
||||||
LOG(log << "\n[Exiting due to assert failed]"); \
|
|
||||||
exit(-1); \
|
|
||||||
}
|
|
||||||
|
|
||||||
// Flag helper macros
|
// Flag helper macros
|
||||||
#define BIT(x) (1 << (x))
|
#define BIT(x) (1 << (x))
|
||||||
|
|
29
src/Log.cpp
Normal file
29
src/Log.cpp
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
#include "Log.h"
|
||||||
|
#include "Common.h"
|
||||||
|
|
||||||
|
#include <fstream>
|
||||||
|
|
||||||
|
namespace Logging
|
||||||
|
{
|
||||||
|
static std::ofstream logFile;
|
||||||
|
|
||||||
|
void Init()
|
||||||
|
{
|
||||||
|
logFile = std::ofstream("/tmp/gBar.log");
|
||||||
|
if (!logFile.is_open())
|
||||||
|
{
|
||||||
|
LOG("Cannot open logfile(/tmp/gBar.log)");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Log(const std::string& str)
|
||||||
|
{
|
||||||
|
if (logFile.is_open())
|
||||||
|
logFile << str << std::endl;
|
||||||
|
}
|
||||||
|
|
||||||
|
void Shutdown()
|
||||||
|
{
|
||||||
|
logFile.close();
|
||||||
|
}
|
||||||
|
}
|
28
src/Log.h
Normal file
28
src/Log.h
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
#pragma once
|
||||||
|
#include <sstream>
|
||||||
|
|
||||||
|
#ifdef USE_LOGFILE
|
||||||
|
#define LOG(x) \
|
||||||
|
std::cout << x << '\n'; \
|
||||||
|
{ \
|
||||||
|
std::stringstream str; \
|
||||||
|
str << x; \
|
||||||
|
Logging::Log(str.str()); \
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
#define LOG(x) std::cout << x << '\n'
|
||||||
|
#endif
|
||||||
|
#define ASSERT(x, log) \
|
||||||
|
if (!(x)) \
|
||||||
|
{ \
|
||||||
|
LOG(log << "\n[Exiting due to assert failed]"); \
|
||||||
|
exit(-1); \
|
||||||
|
}
|
||||||
|
namespace Logging
|
||||||
|
{
|
||||||
|
void Init();
|
||||||
|
|
||||||
|
void Log(const std::string& str);
|
||||||
|
|
||||||
|
void Shutdown();
|
||||||
|
}
|
|
@ -562,6 +562,8 @@ namespace System
|
||||||
|
|
||||||
void Init()
|
void Init()
|
||||||
{
|
{
|
||||||
|
Logging::Init();
|
||||||
|
|
||||||
Config::Load();
|
Config::Load();
|
||||||
|
|
||||||
#ifdef WITH_NVIDIA
|
#ifdef WITH_NVIDIA
|
||||||
|
@ -594,5 +596,6 @@ namespace System
|
||||||
#ifdef WITH_BLUEZ
|
#ifdef WITH_BLUEZ
|
||||||
StopBTScan();
|
StopBTScan();
|
||||||
#endif
|
#endif
|
||||||
|
Logging::Shutdown();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue