Merge pull request #2043 from birarda/metavoxel-fix

fixes for extra characters in logging target names
This commit is contained in:
ZappoMan 2014-02-21 10:24:29 -08:00
commit a12e1ef18f
9 changed files with 19 additions and 28 deletions

View file

@ -19,7 +19,7 @@
#include "AssignmentClient.h" #include "AssignmentClient.h"
const char ASSIGNMENT_CLIENT_TARGET_NAME[] = "assignment-client"; const QString ASSIGNMENT_CLIENT_TARGET_NAME = "assignment-client";
const long long ASSIGNMENT_REQUEST_INTERVAL_MSECS = 1 * 1000; const long long ASSIGNMENT_REQUEST_INTERVAL_MSECS = 1 * 1000;
int hifiSockAddrMeta = qRegisterMetaType<HifiSockAddr>("HifiSockAddr"); int hifiSockAddrMeta = qRegisterMetaType<HifiSockAddr>("HifiSockAddr");

View file

@ -12,7 +12,7 @@
const char* NUM_FORKS_PARAMETER = "-n"; const char* NUM_FORKS_PARAMETER = "-n";
const char ASSIGNMENT_CLIENT_MONITOR_TARGET_NAME[] = "assignment-client-monitor"; const QString ASSIGNMENT_CLIENT_MONITOR_TARGET_NAME = "assignment-client-monitor";
AssignmentClientMonitor::AssignmentClientMonitor(int &argc, char **argv, int numAssignmentClientForks) : AssignmentClientMonitor::AssignmentClientMonitor(int &argc, char **argv, int numAssignmentClientForks) :
QCoreApplication(argc, argv) QCoreApplication(argc, argv)

View file

@ -52,7 +52,7 @@
const short JITTER_BUFFER_MSECS = 12; const short JITTER_BUFFER_MSECS = 12;
const short JITTER_BUFFER_SAMPLES = JITTER_BUFFER_MSECS * (SAMPLE_RATE / 1000.0); const short JITTER_BUFFER_SAMPLES = JITTER_BUFFER_MSECS * (SAMPLE_RATE / 1000.0);
const char AUDIO_MIXER_LOGGING_TARGET_NAME[] = "audio-mixer"; const QString AUDIO_MIXER_LOGGING_TARGET_NAME = "audio-mixer";
void attachNewBufferToNode(Node *newNode) { void attachNewBufferToNode(Node *newNode) {
if (!newNode->getLinkedData()) { if (!newNode->getLinkedData()) {

View file

@ -24,7 +24,7 @@
#include "AvatarMixer.h" #include "AvatarMixer.h"
const char AVATAR_MIXER_LOGGING_NAME[] = "avatar-mixer"; const QString AVATAR_MIXER_LOGGING_NAME = "avatar-mixer";
const unsigned int AVATAR_DATA_SEND_INTERVAL_USECS = (1 / 60.0) * 1000 * 1000; const unsigned int AVATAR_DATA_SEND_INTERVAL_USECS = (1 / 60.0) * 1000 * 1000;

View file

@ -32,7 +32,7 @@ void MetavoxelServer::removeSession(const QUuid& sessionId) {
_sessions.take(sessionId)->deleteLater(); _sessions.take(sessionId)->deleteLater();
} }
const char METAVOXEL_SERVER_LOGGING_NAME[] = "metavoxel-server"; const QString METAVOXEL_SERVER_LOGGING_NAME = "metavoxel-server";
void MetavoxelServer::run() { void MetavoxelServer::run() {
commonInit(METAVOXEL_SERVER_LOGGING_NAME, NodeType::MetavoxelServer); commonInit(METAVOXEL_SERVER_LOGGING_NAME, NodeType::MetavoxelServer);

View file

@ -27,27 +27,27 @@
#include "Logging.h" #include "Logging.h"
HifiSockAddr Logging::logstashSocket = HifiSockAddr(); HifiSockAddr Logging::_logstashSocket = HifiSockAddr();
char* Logging::targetName = NULL; QString Logging::_targetName = QString();
const HifiSockAddr& Logging::socket() { const HifiSockAddr& Logging::socket() {
if (logstashSocket.getAddress().isNull()) { if (_logstashSocket.getAddress().isNull()) {
// we need to construct the socket object // we need to construct the socket object
// use the constant port // use the constant port
logstashSocket.setPort(htons(LOGSTASH_UDP_PORT)); _logstashSocket.setPort(htons(LOGSTASH_UDP_PORT));
// lookup the IP address for the constant hostname // lookup the IP address for the constant hostname
QHostInfo hostInfo = QHostInfo::fromName(LOGSTASH_HOSTNAME); QHostInfo hostInfo = QHostInfo::fromName(LOGSTASH_HOSTNAME);
if (!hostInfo.addresses().isEmpty()) { if (!hostInfo.addresses().isEmpty()) {
// use the first IP address // use the first IP address
logstashSocket.setAddress(hostInfo.addresses().first()); _logstashSocket.setAddress(hostInfo.addresses().first());
} else { } else {
printf("Failed to lookup logstash IP - will try again on next log attempt.\n"); printf("Failed to lookup logstash IP - will try again on next log attempt.\n");
} }
} }
return logstashSocket; return _logstashSocket;
} }
bool Logging::shouldSendStats() { bool Logging::shouldSendStats() {
@ -66,19 +66,10 @@ void Logging::stashValue(char statType, const char* key, float value) {
if (nodeList) { if (nodeList) {
nodeList->getNodeSocket().writeDatagram(logstashPacket, numPacketBytes, nodeList->getNodeSocket().writeDatagram(logstashPacket, numPacketBytes,
logstashSocket.getAddress(), logstashSocket.getPort()); _logstashSocket.getAddress(), _logstashSocket.getPort());
} }
} }
void Logging::setTargetName(const char* targetName) {
// remove the old target name, if it exists
delete Logging::targetName;
// copy over the new target name
Logging::targetName = new char[strlen(targetName)];
strcpy(Logging::targetName, targetName);
}
const char* stringForLogType(QtMsgType msgType) { const char* stringForLogType(QtMsgType msgType) {
switch (msgType) { switch (msgType) {
case QtDebugMsg: case QtDebugMsg:
@ -124,8 +115,8 @@ void Logging::verboseMessageHandler(QtMsgType type, const QMessageLogContext& co
prefixString.append("]"); prefixString.append("]");
} }
if (Logging::targetName) { if (!_targetName.isEmpty()) {
prefixString.append(QString(" [%1]").arg(Logging::targetName)); prefixString.append(QString(" [%1]").arg(_targetName));
} }
fprintf(stdout, "%s %s\n", prefixString.toLocal8Bit().constData(), message.toLocal8Bit().constData()); fprintf(stdout, "%s %s\n", prefixString.toLocal8Bit().constData(), message.toLocal8Bit().constData());

View file

@ -44,14 +44,14 @@ public:
/// sets the target name to output via the verboseMessageHandler, called once before logging begins /// sets the target name to output via the verboseMessageHandler, called once before logging begins
/// \param targetName the desired target name to output in logs /// \param targetName the desired target name to output in logs
static void setTargetName(const char* targetName); static void setTargetName(const QString& targetName) { _targetName = targetName; }
/// a qtMessageHandler that can be hooked up to a target that links to Qt /// a qtMessageHandler that can be hooked up to a target that links to Qt
/// prints various process, message type, and time information /// prints various process, message type, and time information
static void verboseMessageHandler(QtMsgType type, const QMessageLogContext& context, const QString &message); static void verboseMessageHandler(QtMsgType type, const QMessageLogContext& context, const QString &message);
private: private:
static HifiSockAddr logstashSocket; static HifiSockAddr _logstashSocket;
static char* targetName; static QString _targetName;
}; };
#endif /* defined(__hifi__Logstash__) */ #endif /* defined(__hifi__Logstash__) */

View file

@ -33,7 +33,7 @@ void ThreadedAssignment::setFinished(bool isFinished) {
} }
} }
void ThreadedAssignment::commonInit(const char* targetName, NodeType_t nodeType) { void ThreadedAssignment::commonInit(const QString& targetName, NodeType_t nodeType) {
// change the logging target name while the assignment is running // change the logging target name while the assignment is running
Logging::setTargetName(targetName); Logging::setTargetName(targetName);

View file

@ -27,7 +27,7 @@ public slots:
protected: protected:
bool readAvailableDatagram(QByteArray& destinationByteArray, HifiSockAddr& senderSockAddr); bool readAvailableDatagram(QByteArray& destinationByteArray, HifiSockAddr& senderSockAddr);
void commonInit(const char* targetName, NodeType_t nodeType); void commonInit(const QString& targetName, NodeType_t nodeType);
bool _isFinished; bool _isFinished;
private slots: private slots:
void checkInWithDomainServerOrExit(); void checkInWithDomainServerOrExit();