OpenSDN source code
misc_utils.cc
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2013 Juniper Networks, Inc. All rights reserved.
3  */
4 
5 #include <fstream>
6 #include <sstream>
7 #include <stdlib.h>
8 #include <base/misc_utils.h>
9 #include <base/logging.h>
10 #include <netdb.h>
11 #include <netinet/in.h>
12 #include <arpa/inet.h>
13 #include "base/sandesh/version_types.h"
14 #include "base/logging.h"
15 #include "rapidjson/document.h"
16 #include "rapidjson/writer.h"
17 #include "rapidjson/stringbuffer.h"
18 
19 using namespace std;
20 
21 const map<MiscUtils::BuildModule, string> MiscUtils::BuildModuleNames =
24 
26  VERSION_TRACE_BUF, 500));
27 
28 string MiscUtils::BaseName(string filename) {
29  size_t pos = filename.find_last_of('/');
30  if (pos != string::npos) {
31  return filename.substr((pos+1));
32  }
33  return filename;
34 }
35 
36 void MiscUtils::LogVersionInfo(const string build_info, Category::type categ) {
37  VERSION_TRACE(VersionInfoTrace, build_info);
38  if (!LoggingDisabled()) {
39  VERSION_LOG(VersionInfoLog, categ, build_info);
40  }
41 }
42 
44  return (UTCTimestamp() - startup_time_secs_);
45 }
46 
48  return (startup_time_secs_ = UTCTimestamp());
49 }
static void LogVersionInfo(const std::string str, Category::type categ)
Definition: misc_utils.cc:36
static time_t set_startup_time_secs()
Definition: misc_utils.cc:47
static const std::map< BuildModule, std::string > BuildModuleNames
Definition: misc_utils.h:56
static time_t startup_time_secs_
Definition: misc_utils.h:69
static std::string BaseName(std::string filename)
Definition: misc_utils.cc:28
static std::map< BuildModule, std::string > MapInit()
Definition: misc_utils.h:48
static time_t GetUpTimeSeconds()
Definition: misc_utils.cc:43
uint8_t type
Definition: load_balance.h:2
bool LoggingDisabled()
Definition: logging.cc:24
SandeshTraceBufferPtr VersionTraceBuf(SandeshTraceBufferCreate(VERSION_TRACE_BUF, 500))
#define VERSION_LOG(obj, categ,...)
Definition: misc_utils.h:24
#define VERSION_TRACE(obj,...)
Definition: misc_utils.h:20
#define VERSION_TRACE_BUF
Definition: misc_utils.h:16
boost::shared_ptr< TraceBuffer< SandeshTrace > > SandeshTraceBufferPtr
Definition: sandesh_trace.h:18
SandeshTraceBufferPtr SandeshTraceBufferCreate(const std::string &buf_name, size_t buf_size, bool trace_enable=true)
Definition: sandesh_trace.h:46
static time_t UTCTimestamp()
Definition: time_util.h:23