code: function(msg) {
              var event = _getEvent.apply(this, arguments);
  
              var data = {event: event};
  
              // Add agent info if required
              if (_pageInfo !== 'never') {
                  if (!_sentPageInfo || _pageInfo === 'per-entry') {
                      _sentPageInfo = true;
                      if (typeof event.screen === "undefined" &&
                          typeof event.browser === "undefined")
                        _rawLog(_agentInfo()).level('PAGE').send();
                  }
              }
  
              if (_traceCode) {
                  data.trace = _traceCode;
              }
  
              return {level: function(l) {
                  // Don't log PAGE events to console
                  // PAGE events are generated for the agentInfo function
                      if (_print && typeof console !== "undefined" && l !== 'PAGE') {
                        var serialized = null;
                        if (typeof XDomainRequest !== "undefined") {
                          // We're using IE8/9
                          serialized = data.trace + ' ' + data.event;
                        }
                        try {
                          console[l.toLowerCase()].call(console, (serialized || data));
                        } catch (ex) {
                          // IE compat fix
                          console.log((serialized || data));
                        }
                      }
                      data.level = l;
  
                      return {send: function() {
                          var cache = [];
                          var serialized = JSON.stringify(data, function(key, value) {
  
                                if (typeof value === "undefined") {
                                  return "undefined";
                                } else if (typeof value === "object" && value !== null) {
                                  if (_indexOf(cache, value) !== -1) {
                                    // We've seen this object before;
                                    // return a placeholder instead to prevent
                                    // cycles
                                    return "<?>";
                                  }
                                  cache.push(value);
                                }
                            return value;
                          });
  
                              if (_active) {
                                  _backlog.push(serialized);
                              } else {
                                  _apiCall(_token, serialized);
                              }
                          }};
                  }};
          }
docs: Single arg stops the compiler arity warning