create net log instance only when needed

This commit is contained in:
deepak1556 2015-06-08 19:19:44 +05:30
parent 33f65ba981
commit 15255944b6
2 changed files with 18 additions and 16 deletions

View file

@ -21,7 +21,6 @@ base::Value* GetConstants() {
// Adding client information to constants dictionary. // Adding client information to constants dictionary.
base::DictionaryValue* client_info = new base::DictionaryValue(); base::DictionaryValue* client_info = new base::DictionaryValue();
client_info->SetString("name", "Electron");
client_info->SetString("command_line", client_info->SetString("command_line",
base::CommandLine::ForCurrentProcess()->GetCommandLineString()); base::CommandLine::ForCurrentProcess()->GetCommandLineString());
@ -38,21 +37,19 @@ NetLog::NetLog(net::URLRequestContext* context)
: added_events_(false), : added_events_(false),
context_(context) { context_(context) {
auto command_line = base::CommandLine::ForCurrentProcess(); auto command_line = base::CommandLine::ForCurrentProcess();
base::FilePath log_path =
command_line->GetSwitchValuePath(switches::kLogNetLog);
if (command_line->HasSwitch(switches::kLogNetLog)) { #if defined(OS_WIN)
base::FilePath log_path = log_file_.reset(_wfopen(log_path.value().c_str(), L"w"));
command_line->GetSwitchValuePath(switches::kLogNetLog); #elif defined(OS_POSIX)
log_file_.reset(fopen(log_path.value().c_str(), "w"));
#if defined(OS_WIN) #endif
log_file_.reset(_wfopen(log_path.value().c_str(), L"w"));
#elif defined(OS_POSIX)
log_file_.reset(fopen(log_path.value().c_str(), "w"));
#endif
if (!log_file_)
LOG(ERROR) << "Could not open file: " << log_path.value()
<< "for net logging";
if (!log_file_) {
LOG(ERROR) << "Could not open file: " << log_path.value()
<< "for net logging";
} else {
std::string json; std::string json;
base::JSONWriter::Write(GetConstants(), &json); base::JSONWriter::Write(GetConstants(), &json);
fprintf(log_file_.get(), "{\"constants\": %s, \n", json.c_str()); fprintf(log_file_.get(), "{\"constants\": %s, \n", json.c_str());

View file

@ -148,8 +148,13 @@ net::URLRequestContext* URLRequestContextGetter::GetURLRequestContext() {
auto& command_line = *base::CommandLine::ForCurrentProcess(); auto& command_line = *base::CommandLine::ForCurrentProcess();
if (!url_request_context_.get()) { if (!url_request_context_.get()) {
url_request_context_.reset(new net::URLRequestContext); url_request_context_.reset(new net::URLRequestContext);
net_log_.reset(new NetLog(url_request_context_.get()));
url_request_context_->set_net_log(net_log_.get()); // --log-net-log
if (command_line.HasSwitch(switches::kLogNetLog)) {
net_log_.reset(new NetLog(url_request_context_.get()));
url_request_context_->set_net_log(net_log_.get());
}
network_delegate_.reset(delegate_->CreateNetworkDelegate()); network_delegate_.reset(delegate_->CreateNetworkDelegate());
url_request_context_->set_network_delegate(network_delegate_.get()); url_request_context_->set_network_delegate(network_delegate_.get());