mirror of
https://github.com/meshtastic/firmware.git
synced 2025-08-19 11:43:27 +00:00
rsyslog is working
This commit is contained in:
parent
d97a09ba1f
commit
829318046a
@ -40,7 +40,11 @@ Syslog::Syslog(UDP &client)
|
|||||||
|
|
||||||
Syslog &Syslog::server(const char *server, uint16_t port)
|
Syslog &Syslog::server(const char *server, uint16_t port)
|
||||||
{
|
{
|
||||||
|
if (this->_ip.fromString(server)) {
|
||||||
|
this->_server = NULL;
|
||||||
|
} else {
|
||||||
this->_server = server;
|
this->_server = server;
|
||||||
|
}
|
||||||
this->_port = port;
|
this->_port = port;
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
@ -93,6 +97,11 @@ bool Syslog::isEnabled()
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool Syslog::vlogf(uint16_t pri, const char *fmt, va_list args)
|
bool Syslog::vlogf(uint16_t pri, const char *fmt, va_list args)
|
||||||
|
{
|
||||||
|
return this->vlogf(pri, this->_appName, fmt, args);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool Syslog::vlogf(uint16_t pri, const char *appName, const char *fmt, va_list args)
|
||||||
{
|
{
|
||||||
char *message;
|
char *message;
|
||||||
size_t initialLen;
|
size_t initialLen;
|
||||||
@ -111,13 +120,13 @@ bool Syslog::vlogf(uint16_t pri, const char *fmt, va_list args)
|
|||||||
vsnprintf(message, len + 1, fmt, args);
|
vsnprintf(message, len + 1, fmt, args);
|
||||||
}
|
}
|
||||||
|
|
||||||
result = this->_sendLog(pri, message);
|
result = this->_sendLog(pri, appName, message);
|
||||||
|
|
||||||
delete[] message;
|
delete[] message;
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
inline bool Syslog::_sendLog(uint16_t pri, const char *message)
|
inline bool Syslog::_sendLog(uint16_t pri, const char *appName, const char *message)
|
||||||
{
|
{
|
||||||
int result;
|
int result;
|
||||||
|
|
||||||
@ -149,9 +158,11 @@ inline bool Syslog::_sendLog(uint16_t pri, const char *message)
|
|||||||
this->_client->print(F(">1 - "));
|
this->_client->print(F(">1 - "));
|
||||||
this->_client->print(this->_deviceHostname);
|
this->_client->print(this->_deviceHostname);
|
||||||
this->_client->print(' ');
|
this->_client->print(' ');
|
||||||
this->_client->print(this->_appName);
|
this->_client->print(appName);
|
||||||
this->_client->print(F(" - - - \xEF\xBB\xBF"));
|
this->_client->print(F(" - - - \xEF\xBB\xBF"));
|
||||||
this->_client->print(F("[0]: "));
|
this->_client->print(F("["));
|
||||||
|
this->_client->print(int(millis() / 1000));
|
||||||
|
this->_client->print(F("]: "));
|
||||||
this->_client->print(message);
|
this->_client->print(message);
|
||||||
this->_client->endPacket();
|
this->_client->endPacket();
|
||||||
|
|
||||||
|
@ -131,7 +131,7 @@ class Syslog
|
|||||||
uint8_t _priMask = 0xff;
|
uint8_t _priMask = 0xff;
|
||||||
bool _enabled = false;
|
bool _enabled = false;
|
||||||
|
|
||||||
bool _sendLog(uint16_t pri, const char *message);
|
bool _sendLog(uint16_t pri, const char *appName, const char *message);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit Syslog(UDP &client);
|
explicit Syslog(UDP &client);
|
||||||
@ -148,6 +148,7 @@ class Syslog
|
|||||||
bool isEnabled();
|
bool isEnabled();
|
||||||
|
|
||||||
bool vlogf(uint16_t pri, const char *fmt, va_list args) __attribute__((format(printf, 3, 0)));
|
bool vlogf(uint16_t pri, const char *fmt, va_list args) __attribute__((format(printf, 3, 0)));
|
||||||
|
bool vlogf(uint16_t pri, const char *appName, const char *fmt, va_list args) __attribute__((format(printf, 3, 0)));
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // HAS_ETHERNET || HAS_WIFI
|
#endif // HAS_ETHERNET || HAS_WIFI
|
||||||
|
@ -124,8 +124,13 @@ size_t RedirectablePrint::log(const char *logLevel, const char *format, ...)
|
|||||||
default:
|
default:
|
||||||
ll = 0;
|
ll = 0;
|
||||||
}
|
}
|
||||||
|
auto thread = concurrency::OSThread::currentThread;
|
||||||
|
if (thread) {
|
||||||
|
syslog.vlogf(ll, thread->ThreadName.c_str(), format, arg);
|
||||||
|
} else {
|
||||||
syslog.vlogf(ll, format, arg);
|
syslog.vlogf(ll, format, arg);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
va_end(arg);
|
va_end(arg);
|
||||||
|
@ -45,7 +45,7 @@ static int32_t reconnectETH()
|
|||||||
LOG_INFO("Starting Syslog client\n");
|
LOG_INFO("Starting Syslog client\n");
|
||||||
// Defaults
|
// Defaults
|
||||||
int serverPort = 514;
|
int serverPort = 514;
|
||||||
const char *serverAddr = moduleConfig.mqtt.address;
|
const char *serverAddr = config.network.rsyslog_server;
|
||||||
String server = String(serverAddr);
|
String server = String(serverAddr);
|
||||||
int delimIndex = server.indexOf(':');
|
int delimIndex = server.indexOf(':');
|
||||||
if (delimIndex > 0) {
|
if (delimIndex > 0) {
|
||||||
|
@ -142,7 +142,7 @@ static void onNetworkConnected()
|
|||||||
LOG_INFO("Starting Syslog client\n");
|
LOG_INFO("Starting Syslog client\n");
|
||||||
// Defaults
|
// Defaults
|
||||||
int serverPort = 514;
|
int serverPort = 514;
|
||||||
const char *serverAddr = moduleConfig.mqtt.address;
|
const char *serverAddr = config.network.rsyslog_server;
|
||||||
String server = String(serverAddr);
|
String server = String(serverAddr);
|
||||||
int delimIndex = server.indexOf(':');
|
int delimIndex = server.indexOf(':');
|
||||||
if (delimIndex > 0) {
|
if (delimIndex > 0) {
|
||||||
|
Loading…
Reference in New Issue
Block a user