UsageLoggingSpecification

This document describes the types of events logged by the NetBeans IDE for the Feature Usage Statistics. It specifies the list of event types as well as the details for each event record type.

Contents

Usage Logging

The logging is based on the UIGesturesCollector. However, unlike the original Gesture Collector, feature usage tracking doesn't care so much about tracking individual actions and gestures performed by the user at the UI level, but rather focuses on higher level events indicating use of specific product features. For developers, this means that a special singleton Logger instance is provided to log events relevant from the Feature Usage Statistics point of view.

To get the Logger instance for Feature Usage logging, use the following code:

    Logger logger = Logger.getLogger("org.netbeans.ui.metrics.projects");   // NOI18N

The org.netbeans.ui.metrics part of the logger name is mandatory. The suffix (.projects in the example above) is optional and should be based on the name of the originating module.

Usage Log Records

All usage logging records use the standard java.util.logging mechanism. A LogRecord instance is created for each logged event. All records are created with the INFO reporting level and with a predefined message identifying the type of event. The message must start with the "USG_" prefix.

LogRecord rec = new LogRecord(Level.INFO, "USG_PROJECT_OPEN");

Additional data can be passed as an array of LogRecord parameters. The number and type of parameters will vary depending on the type of event. However, all parameters must have a meaningful string representation. The order of parameters is important and must not be changed freely. See below for detailed specification of parameters for each event type.

rec.setParameters(new Object[] {param1, param2, ...});

You should also set the logger name to the log record:

rec.setLoggerName(logger.getName());

and the localizing bundle to associate the message key (USG_*) with a human readable text in case the log record is ever displayed in the UI (e.g. in the exception report preview):

rec.setResourceBundle(NbBundle.getBundle(MyClass.class));
rec.setResourceBundleName(MyClass.class.getPackage().getName() + ".Bundle");

Bundle.properties:

USG_MY_MESSAGE=Human-readable description of event w/ param values {0}, {1}, ...

Finally, invoke the log method to send the populated record to the logger:

logger.log(rec);

Also refer to Logging Tutorial for detailed documentation.

A Note on Compatibility

As mentioned previously, the type and order of parameters is important and shouldn't be changed without a notice as it would cause problems with the log record processing. However, a legitimate need to modify a log event record may occur in the future as features evolve and additional parameters need to be logged. In such cases, the existing event records shouldn't be changed, but rather new event record types should be created. For example, should there be a need to extend or modify the USG_PROJECT_CREATE_WEB record, a new record with a new name (e.g. USG_PROJECT_CREATE_WEB_2) should be created and documented properly. As a general rule, new variants of existing event record types should use the same name with an integer number appended. The numbers should be growing sequentially to specify the version of the record type.

Event Types

This section defines the types of event records used by Feature Usage Statistics. All such records are identified by a message text starting with the USG_ prefix.

The following event types are available:

  • Generic Project Events
  • USG_PROJECT_CREATE
  • USG_PROJECT_OPEN
  • USG_PROJECT_CLOSE
  • USG_PROJECT_CONFIG (necessary???)
  • USG_PROJECT_DEBUG
  • USG_PROJECT_BUILD_NATIVE (native package creation, as yet available in FX projects only)
  • USG_PROJECT_BROWSER
  • Specialized Project Events
  • USG_PROJECT_CREATE_WEB
  • USG_PROJECT_CREATE_CND
  • USG_PROJECT_CREATE_JDA
  • USG_PROJECT_CREATE_PHP
  • USG_PROJECT_CREATE_RUBY
  • USG_PROJECT_CREATE_RAILS
  • USG_PROJECT_CREATE_J2SE
  • USG_PROJECT_CREATE_NBMODULE
  • USG_PROJECT_CREATE_MAVEN
  • ...
  • USG_PROJECT_OPEN_WEB
  • USG_PROJECT_OPEN_EJB
  • USG_PROJECT_OPEN_EAR
  • USG_PROJECT_OPEN_CND
  • USG_PROJECT_OPEN_APPCLIENT
  • USG_PROJECT_OPEN_RUBY (specialized OPEN event needed)?
  • USG_PROEJCT_OPEN_RAILS (specialized OPEN event needed)?
  • USG_PROJECT_OPEN_MAVEN
  • USG_PROJECT_OPEN_PHP
  • ...
  • USG_PROJECT_BUILD_NATIVE_JFX (native package creation, see JavaFX 2.2+)
  • ...
  • USG_PROJECT_CONFIG_WEB
  • USG_PROJECT_CONFIG_PHP
  • USG_PROJECT_CONFIG_RUBY
  • USG_PROJECT_CONFIG_RAILS
  • USG_PROJECT_CONFIG_CND
  • ...
  • USG_PROJECT_ECLIPSE_IMPORT
  • USG_BUGTRACKING_QUERY
  • USG_BUGTRACKING_AUTOMATIC_REFRESH
  • System Events
  • USG_SYSTEM_CONFIG
  • USG_ENABLED_MODULES
  • USG_DISABLED_MODULES
  • USG_INSTALLED_CLUSTERS
  • Other Event Types
  • USG_DEBUG_SESSION_START
  • USG_DEBUG_ATTACH
  • USG_DEBUG_ATTACH_JPDA
  • USG_DEBUG_HTML5_JS
  • USG_FORM_CREATED
  • USG_FORM_MODIFIED
  • USG_FORM_BINDING_MODIFIED
  • USG_FORM_APPFRAMEWORK_USED
  • USG_PROFILER_PROFILE_APP
  • USG_PROFILER_PROFILE_CLASS
  • USG_PROFILER_ATTACH
  • USG_PROFILER_CONFIG
  • USG_VCS_CLIENT
  • USG_VCS_ACTION
  • USG_VCS_REPOSITORY
  • USG_HELP_SHOW
  • USG_DB_CONNECT
  • USG_COLLAB_LOGIN
  • USG_EDITOR_MIME_TYPE
  • USG_PERSISTENCE_SESSIONBEAN
  • USG_PERSISTENCE_XML_CREATED
  • USG_PERSISTENCE_ENTITY
  • USG_PERSISTENCE_ENTITY_DB_CREATED
  • USG_PERSISTENCE_CONTROLLER_CREATED
  • USG_PERSISTENCE_JSF
  • USG_PERSISTENCE_DETECTED
  • USG_START_PAGE_LINK
  • USG_SHOW_START_PAGE
  • USG_JSF_INCLUDED_SUITE
  • USG_SEARCH_TYPE
  • USG_UNIT_TESTS_LIBRARY
  • USG_TEST_RUN_JS
  • USG_TEST_CONFIG_JS
  • USG_TEST_RUN_PHP
  • USG_TEST_CONFIG_PHP
  • USG_BOWER_INSTALL
  • USG_NPM_INSTALL
  • USG_GRUNT_BUILD
  • USG_GULP_BUILD

Generic Project Events

The generic project events are logged at the common project UI level. The most important and in most cases the only information that can be tracked at this level is the type of project being created, opened, or configured. The respective event records don't include information that is project type specific, such as target servers, or special configuration parameters. For such information, refer to the Specialized Project Events. The generic project events are still useful when calculating the basic distribution of application types developed by users.

USG_PROJECT_OPEN

The USG_PROJECT_OPEN event record is logged when a project (of any type) is opened either by the user, or automatically after the IDE restart. The record includes one parameter -- the fully qualified name of the class representing the given project, e.g. WebProject, PhpProject, FreeformProject.

Parameters:

Parameter Description Values
param[0] A fully qualified name of the class representing the project type being opened. Examples:
org.netbeans.modules.java.j2seproject.J2SEProject
org.netbeans.modules.web.project.WebProject
org.netbeans.modules.php.project.PhpProject
org.netbeans.modules.apisupport.project.NbModuleProject
...


USG_PROJECT_CLOSE

The USG_PROJECT_CLOSE event record is logged when a project (of any type) is closed. The record includes one parameter -- the fully qualified name of the class representing the given project, e.g. WebProject, PhpProject, FreeformProject.

Parameters:

Parameter Description Values
param[0] A fully qualified name of the class representing the project type being closed. Examples:
org.netbeans.modules.java.j2seproject.J2SEProject
org.netbeans.modules.web.project.WebProject
org.netbeans.modules.php.project.PhpProject
org.netbeans.modules.apisupport.project.NbModuleProject
...


USG_PROJECT_DEBUG

The USG_PROJECT_DEBUG event record is logged when the user starts debugging of a project (of any type). The record includes one parameter -- the fully qualified name of the class representing the given project, e.g. WebProject, PhpProject, FreeformProject.


USG_PROJECT_BUILD_NATIVE

The USG_PROJECT_BUILD_NATIVE event record is logged when the user invokes the action to build native package. Native packaging has been introduced in JavaFX 2.2 and is planned to be extended for use with SE projects (see http://docs.oracle.com/javafx/2/deployment/self-contained-packaging.htm#BCGIBBCI). The record includes one parameter -- the fully qualified name of the class representing the given project.

Parameters:

Parameter Description Values
param[0] A fully qualified name of the class representing the project type being closed. Example:
org.netbeans.modules.javafx2.project.JFXProject
...


USG_PROJECT_BROWSER

The USG_PROJECT_BROWSER event record is logged when the user invokes a project action that opens a browser. Typically, this project action can be: Run Project, Debug Project, Run File, Debug File. The record always includes three parameters -- project type, browser identifier and browser family.

Parameters:

Parameter Description Values
param[0] Project type. Example:
org.netbeans.modules.php.project
...
param[1] Browser identifier. Example:
SL[/Browsers/webviewBrowser
...
param[2] Browser family. Example:
JAVAFX_WEBVIEW
...


Specialized Project Events

Specialized Project Events can be seen as project specific extensions of the Generic Project Events. The event records include information that is specific to a particular project type. Typically, this would be the information the user fills in in the New Project or Project Properties wizards. For example, for a Java EE project, the record would include the type of the target app server and the Java EE spec version. For a C/C++ project, the record may include the tool chain spec (e.g. GCC), etc.

USG_PROJECT_CREATE_WEB

The USG_PROJECT_CREATE_WEB event record is logged when a project of type Web Application is created.

Parameters:

Parameter Description Values
param[0] Target server type. Examples:
GlassFish V2
Tomcat 6.0
BEA WebLogic Server
JBoss Application Server
...
param[1] Target Java EE version. J2EE 1.3or J2EE 1.4 or Java EE 5
param[2] Source level. 1.3 or 1.4 or 1.5 or 1.6
param[3] Source structure.  ???
param[4] List of selected web framework names separated by the '|' character Example: JavaServer Faces|Struts 1.2.9


USG_PROJECT_OPEN_WEB

The USG_PROJECT_OPEN_WEB event record is logged when a project of type Web Application is opened.

Parameters:

Parameter Description Values
param[0] Target server type. Examples:
GlassFish V2
Tomcat 6.0
BEA WebLogic Server
JBoss Application Server
...


USG_PROJECT_CONFIG_WEB

The USG_PROJECT_CONFIG_WEB event record is logged when a project of type Web Application is customized.

Parameters:

Parameter Description Values
param[0] Target server type. Examples:
GlassFish V2
Tomcat 6.0
BEA WebLogic Server
JBoss Application Server
...
param[1] List of selected web framework names separated by the '|' character Example: JavaServer Faces|Struts 1.2.9


USG_PROJECT_OPEN_EJB

The USG_PROJECT_OPEN_EJB event records is logged when a project of type EJB is opened.

Parameters:

Parameter Description Values
param[0] Target server type. Examples:
GlassFish V2
BEA WebLogic Server
JBoss Application Server
...


USG_PROJECT_OPEN_EAR

The USG_PROJECT_OPEN_EAR event record is logged when a project of type EAR is opened.

Parameters:

Parameter Description Values
param[0] Target server type. Examples:
GlassFish V2
BEA WebLogic Server
JBoss Application Server
...


USG_PROJECT_OPEN_APPCLIENT

The USG_PROJECT_OPEN_APPCLIENT event records are logged when a project of type Application Client is opened.

Parameters:

Parameter Description Values
param[0] Target server type. Examples:
GlassFish V2
BEA WebLogic Server
JBoss Application Server
...


USG_PROJECT_CREATE_JDA

The USG_PROJECT_CREATE_JDA event record is logged when a new project of type Java Desktop Application is created.

Parameters:

Parameter Description Values
param[0] Shell type. JDA_APP_TYPE_BASIC,
JDA_APP_TYPE_CRUD


USG_PROJECT_x_PHP

The USG_PROJECT_CREATE_PHP and USG_PROJECT_CONFIG_PHP event records are logged when a project of type PHP Application is created or configured.

Parameters:

Parameter Description Values
param[0] Flag if extra source dir is used. EXTRA_SRC_DIR_NO / EXTRA_SRC_DIR_YES
param[1] Type of currently active execution mode (Run As) LOCAL / REMOTE / SCRIPT
param[2] Number of available configurations integer value
param[3] Flag if sources will be copied to another location. COPY_SOURCES_NO / COPY_SOURCES_YES
param[4] PHP frameworks. String, "|" separated framework names (since NB 6.8, 2009-11-05).


The USG_PROJECT_OPEN_PHP event records are logged when a project of type PHP Application is opened (since NB 6.8, 2009-11-05).

Parameters:

Parameter Description Values
param[0] PHP frameworks. String, "|" separated framework names.


Notes:

  • Until 2008-09-29 (NB 6.5 beta and dev builds) the 'Extra source dir' and 'copy sources' parameters were simple boolean values (true/false). The back-end has been modified to translate the old values to the new ones.
  • PHP frameworks were added for NB 6.8 (on 2009-11-05)
  • This specification replaces the PHP project logging described in UILoggingInPHP.

USG_PROJECT_x_RUBY

The USG_PROJECT_CREATE_RUBY and USG_PROJECT_CONFIG_RUBY event records are generated when a project of type Ruby Application is created or configured.

Parameters:

Parameter Description Values
param[0] Ruby platform kind String, e.g. Ruby, JRuby, Rubinius
param[1] Ruby platform version String, e.g. 1.9.1, 1.1.4
param[2] RubyGems version String, e.g. 1.2.0


USG_PROJECT_x_RAILS

The USG_PROJECT_CREATE_RAILS and USG_PROJECT_CONFIG_RAILS event records are generated when a project of type Ruby on Rails Application is created or configured.

Parameters:

Parameter Description Values
param[0] Ruby platform kind String, e.g. Ruby, JRuby, Rubinius
param[1] Ruby platform version String, e.g. 1.9.1, 1.1.4
param[2] RubyGems version String, e.g. 1.2.0
param[3] Server kind String, e.g. ???
param[4] Database kind String, e.g. ???
param[5] Rails version String, e.g. 2.1.1


USG_PROJECT_CREATE_CND

The USG_PROJECT_OPEN_CND event records are generated when a project of C++ type is created. The record includes the following parameters about the project.

Parameters:

Parameter Description Values
param[0] Type of C++ application String, one of APPLICATION, MAKEFILE, DYNAMIC_LIB, STATIC_LIB + since Feb 09 QT_APPLICATION, QT_DYNAMIC_LIB, QT_STATIC_LIB
param[1] Toolchain pluggable String value, but for now we can expect GNU, SunStudio, Intel, UNKNOWN
param[2] Toolchain flavor pluggable String value, but for now we can expect MinGW, Cygwin, GNU, SunStudio, Intel
param[3] Local or remote mode? String, one of LOCAL, REMOTE
param[4] Platform String, e.g Linux-x86, ...
param[5] Sample project? String, one of SAMPLE_PROJECT, USER_PROJECT
param[6] Ide Kind (since 3 May '10) String, one of "cnd", "ide", "dbxtool", "dlightool"


USG_PROJECT_x_CND

The USG_PROJECT_OPEN_CND event records are generated when a project of C++ type is opened. USG_PROJECT_CONFIG_CND event is generated when active configuration is changed. The record includes the following parameters about active configuration of project.

Parameters:

Parameter Description Values
param[0] Type of C++ application String, one of APPLICATION, MAKEFILE, DYNAMIC_LIB, STATIC_LIB + since Feb 09 QT_APPLICATION, QT_DYNAMIC_LIB, QT_STATIC_LIB
param[1] Toolchain pluggable String value, but for now we can expect GNU, SunStudio, Intel, UNKNOWN
param[2] Toolchain flavor pluggable String value, but for now we can expect MinGW, Cygwin, GNU, SunStudio, Intel
param[3] Local or remote mode? String, one of LOCAL, REMOTE
param[4] Platform String, e.g Linux-x86, ...
param[5] Number of all project files String, ranged value: 25 if files<25, 100 if 25<files<100, 500, 1000, 2000, 5000, 10000, 20000, 50000, 99999
param[6] Number of files in active configuration String, ranged value as in prev parameter 25, 100, 500, 1000, 2000, 5000, 10000, 20000, 50000, 99999
param[7] Use C++ language? String, one of USE_CPP, NO_CPP
param[8] Use C language? String, one of USE_C, NO_C
param[9] Use Fortran language? String, one of USE_FORTRAN, NO_FORTRAN
param[10] Use Assembler language? (since Feb 09) String, one of USE_ASM, NO_ASM
param[11] Ide Kind (since 3 May '10) String, one of "cnd", "ide", "dbxtool", "dlightool"


USG_PROJECT_OPEN_MAVEN

The USG_PROJECT_OPEN_MAVEN event records are generated when a project of type Maven is opened.

Parameters:

Parameter Description Values
param[0] project packaging String, e.g. jar, pom, maven-plugin


USG_PROJECT_CREATE_MAVEN

The USG_PROJECT_CREATE_MAVEN event record is logged when a project of type Maven is created.

Parameters:

Parameter Description Values
param[0] groupId + ":" + artifactId + ":" + version Example:org.apache.maven.archetypes:maven-archetype-quickstart:1.0


USG_PROJECT_CREATE_J2SE

The USG_PROJECT_CREATE_J2SE event record is logged when a project of type J2SE is created.


USG_PROJECT_CREATE_NBMODULE

The USG_PROJECT_CREATE_NBMODULE event record is logged when a project of type NetBeans module is created.

Parameters:

Parameter Description Values
param[0] Module type String, possible values: StandAloneModule, SuiteComponentModule, SuiteLibraryModule, NetBeansOrgModule


USG_PROJECT_BUILD_NATIVE_JFX

The USG_PROJECT_BUILD_NATIVE_JFX event record is logged when the user invokes the action to build JavaFX native package. Native packaging has been introduced in JavaFX 2.2 and is planned to be extended for use with SE projects (see http://docs.oracle.com/javafx/2/deployment/self-contained-packaging.htm#BCGIBBCI).


USG_PROJECT_ECLIPSE_IMPORT

The USG_PROJECT_ECLIPSE_IMPORT event records are logged when an Eclipse project is imported to NetBeans.

Parameters:

Parameter Description Values
param[0] Resulting NetBeans project type. Examples: Java Project, Web Application, ...
param[1] Was whole workspace imported or just single project? true for workspace import otherwise false
param[2] Was project destination the same as Eclipse project or different? true for the same folder otherwise false
param[3] Number of import issues. integer value


USG_FREEFORM_PROJECT

Logged when a freeform project is opened. "Approximate numbers" are either integers 0..9, or logarithm ranges with the format "~e^5" meaning exp(4.5)<x<exp(5.5).

Parameters:

Parameter Description Values
param[0] number of Java compilation units (i.e. group of source roots built together) approximate number
param[1] number of compilation units which lack any "built-to" specification (i.e. Output Directory) approximate number
param[2] number of compilation units which include more than one source root approximate number
param[3] number of distinct classpath entries (JARs or folders) for any compilation units, including entries which do not seem to exist at the time approximate number
param[4] number of targets in build.xml or the designated original build script, including imported and hidden targets approximate number
param[5] whether Java EE web module data is present boolean


USG_PROJECT_HTML5_CREATE

The USG_PROJECT_HTML5_CREATE event record is logged when a project of type HTML5 is created.

Parameters:

Parameter Description Values
param[0] Wizard type NEW or EXISTING
param[1] Site template used NONE or ARCHIVE or ANGULAR or BOOTSTRAP or etc.
param[2] List of JS libraries explicitely added by user; items are separted by '|' cdnjs-jquery-1.8.2|cdnjs-backbone.js-0.9.2
param[3] Site root located under/same as project directory (set only when wizard type is EXISTING) YES or NO


USG_PROJECT_HTML5_CONFIGURE

The USG_PROJECT_HTML5_CONFIGURE event record is logged when a project of type HTML5 was configured. There is a separate message for configuration change - USG_PROJECT_HTML5_CONFIGURATION_CHANGE.

Parameters:

Parameter Description Values
param[0] List of JS libraries explicitely added by user; items are separted by '|' cdnjs-jquery-1.8.2|cdnjs-backbone.js-0.9.2
param[1] Server type EMBEDDED or EXTERNAL
param[2] Web Root (set only in the case of server type being EMBEDDED) YES or NO


USG_PROJECT_HTML5_OPEN

The USG_PROJECT_HTML5_OPEN event record is logged when a project of type HTML5 was opened.

Parameters:

Parameter Description Values
param[0] ID of Selected Browser For example: SL__Browsers_ChromeBrowser or SL__Browsers_ChromeBrowser.INTEGRATED (for some reason browser's ID is prefixed with SL__Browsers_)
param[1] Project has some unit tests YES or NO
param[2] Project has Cordova enabled YES or NO
param[3] Project has Gruntfile.js YES or NO
param[4] Project has bower.js YES or NO
param[5] Project has package.json YES or NO

USG_PROJECT_HTML5_SAVE_AS_TEMPLATE

The USG_PROJECT_HTML5_SAVE_AS_TEMPLATE event record is logged when a project was saved as a template. This message has no parameters.

USG_JSTESTDRIVER_CONFIGURED

The USG_JSTESTDRIVER_CONFIGURED event record is logged when js-test-driver server was setup in the IDE. Parameters:

Parameter Description Values
param[0] Remote server YES or NO
param[0] Uses integrated browsers. YES or NO


USG_JSTESTDRIVER_STARTED

The USG_JSTESTDRIVER_STARTED event record is logged whenever js-test-driver server was started from the IDE. This message has no parameters.

System Events

USG_SYSTEM_CONFIG

The USG_SYSTEM_CONFIG event record is logged when a usage log is about to be sent to the server. It contains important information identifying the IDE version, build number, hosting OS and architecture ID, hosting JDK.

Parameters:

Parameter Description Values
param[0] OS/Architecture ID string e.g. Linux, 2.6.24-20-generic, i386
param[1] JDK version value of the java.version property, e.g. Java HotSpot(TM) Client VM, 10.0-b22, Java(TM) SE Runtime Environment, 1.6.0_06-b02
param[2] IDE version as shown in the About box, e.g. NetBeans IDE Dev (Build 200807310201)
param[3] build number e.g. 200807310201
param[4] build day ?  ?
param[5] extracted IDE version number e.g. 6.1, empty string for Dev build
param[6] build source branch tag or trunk
param[7]  ?  ?
param[8] Hg chagset ID ?  ?


USG_ENABLED_MODULES

The USG_ENABLED_MODULES event record is logged when a usage log is about to be sent to the server. It captures the list of enabled modules in the current IDE configuration including their versions. The record has a variable number of parameters that contain the fully.qualified.module.name [module.version] pairs for each enabled module.

USG_DISABLED MODULES

This event record is similar to the USG_ENABLED_MODULES one, but includes a list of installed, but disabled modules in the current IDE configuration.

The record has a variable number of parameters that contain the fully.qualified.module.name [module.version] pairs for each disabled module.

USG_INSTALLED_CLUSTERS

The USG_INSTALLED_CLUSTERS event record is logged at the same time as the USG_ENABLED_MODULES event. It captures the list of the clusters in the current IDE configuration. The record has a variable number of parameters that contain the simple name (not the full path) for each installed cluster.

Parameters:

Parameter Description Values
param[0] 1st installed cluster e.g. nb6.5
param[1] 2nd installed cluster e.g. ide10
param[2] 3rd installed cluster e.g. java2
... ... ...


Other Event Types

USG_DEBUG_SESSION_START

This event record is generated when a new debug session (of any type) is started. The record includes three parameters:

  1. the debug session name
  2. the session location name
  3. the current language used for this debug session

USG_DEBUG_ATTACH

The event record is generated when a debugger is attached to a debugged process. It includes one parameter:

  1. the fully qualified class name of the debugger attach type (e.g. org.netbeans.modules.debugger.jpda.ui.JPDAAttachType)

USG_DEBUG_ATTACH_JPDA

The event record is logged when a JPDA debugger is attached to a debugged process. The record includes the following parameters:

  1. the fully qualified name of the connector type (e.g. com.sun.jdi.SocketAttach)
  2. comma-separated list of arguments used for attaching (hostname, port, timeout)

USG_DEBUG_HTML5_JS

The event record is logged when an action in JavaScript debugger (which is active during run of HTML5 project) is performed for the first time in NetBeans session. The record includes following parameters:

  1. inLiveHTML - boolean indicating if the run was performed in a live HTML view.

USG_FORM_CREATED

The event record is generated when a new Swing form is created by the user. The record includes one parameter:

  1. the name of the form template (e.g. JFrame, YesNoCancelDialog)

USG_FORM_MODIFIED

The event record is generated when a Swing form is modified by the user in the GUI designer. Only one event of this type is logged during an IDE session. It simply indicates whether the user used the NetBeans GUI designer to modify any forms. The record has no additional parameters.

USG_FORM_BINDING_MODIFIED

This event record is generated when a beans binding property (any of the properties in the Binding section of the Property tab) is modified in the GUI designer. Only one event of this type is logged during an IDE session. Subsequent modifications of the beans binding properties are not logged. The record has no additional parameters.

USG_FORM_APPFRAMEWORK_USED

This event record is generated when the user edits a form based on the Swing Application Framework. Only one event of this type is logged during an IDE session. Subsequent modifications of the beans binding properties are not logged. The record has no additional parameters.

USG_PROFILER_PROFILE_APP

The USG_PROFILER_PROFILE_APP event record is logged when the user starts profiling an application (of any type). The record includes the following parameters:

  1. The fully qualified name of the class representing the profiled project's type.
  2. The identifier of the Java version used in the profiling session (e.g. JAVA_jdk16).

The record is typically followed by the USG_PROFILER_CONFIG record.

USG_PROFILER_PROFILE_CLASS

The USG_PROFILER_PROFILE_CLASS event record is logged when the user starts profiling a single class. The record includes the following parameters:

  1. The fully qualified name of the class of the project type the profiled class belongs to (e.g. org.netbeans.modules.java.j2seproject.J2SEProject).
  2. The identifier of the Java version used in the profiling session (e.g. JAVA_jdk16).

The record is typically followed by the USG_PROFILER_CONFIG event record.

USG_PROFILER_ATTACH

  1. The fully qualified name of the class representing the profiled project's type (or an empty string if attaching with no project).
  2. Target OS identifier (e.g. OS_Linux)
  3. Attach type direct? (ATTACH_DIRECT | ATTACH_DYNAMIC)
  4. Attach type remote? (ATTACH_REMOTE | ATTACH_LOCAL)

The record is typically followed by the USG_PROFILER_CONFIG event record.

USG_PROFILER_CONFIG

  1. Profiling type (TYPE_CPU_ENTIRE | TYPE_CPU_PART | TYPE_CPU_STOPWATCH | TYPE_MEM_ALLOC | TYPE_MEM_LIVENESS | TYPE_MONITOR)
  2. Instrumentation scheme (INSTR_EAGER | INSTR_LAZY | INSTR_TOTAL)
  3. Profile underlying framework? (FRAMEWORK_YES | FRAMEWORK_NO)
  4. Exclude wait time? (WAIT_EXCLUDE | WAIT_INCLUDE)
  5. Instrument method invoke? (REFL_INVOKE_YES | REFL_INVOKE_NO)
  6. Instrument spawned threads? (SPAWNED_THREADS_YES | SPAWNED_THREADS_NO)
  7. Thread CPU timer on? (THREAD_CPU_YES | THREAD_CPU_NO)
  8. Use profiling points? (PPOINTS_YES | PPOINTS_NO)

USG_VCS_CLIENT

This event record is generated when the IDE detects a project under a version control system and invokes a command using a supported client. The record is logged at most once per IDE session and VCS type. It includes two parameters:

  1. The VCS type identifier (CVS | SVN | HG | CC).
  2. The client type identifier (CLI | JAVAHL | JAVALIB).

USG_VCS_REPOSITORY

This event record is generated when user connects to an external repository residing on a known public hosting services. The record is logged at most once per IDE session, VCS type and repository. It includes two parameters:

  1. The VCS type identifier (CVS | SVN | HG | CC | GIT).
  2. The repository identifier (GITHUB | GITORIOUS | BITBUCKET | GOOGLECODE | OTHER).

USG_VCS_ACTION

This event record is generated when the user invokes a VCS command. The record is logged at most once per IDE session and VCS type. It includes the identification of the used VCS type:

  1. The VCS type identifier (CVS | SVN | HG | CC | GIT).

USG_HELP_SHOW

The USG_HELP_SHOW event record is logged when a help topic is displayed by the user using the Help menu, or the context Help button. The record includes one parameter -- the fully qualified Help topic ID.

USG_DB_CONNECT

The USG_DB_CONNECT event record is logged upon a successful connection to a database. The record includes one parameter -- the fully qualified name of the JDBC driver used for making the connection.

USG_COLLAB_LOGIN

The USG_COLLAB_LOGIN event record is logged when user logs in to collaboration server. There is currently no parameter. (Added to NB 7.0 trunk builds in Jan 2009.)

USG_EDITOR_MIME_TYPE

The USG_EDITOR_MIME_TYPE event record is logged during IDE shutdown for every mime type used by editor. Only one record for given mime type is logged. Number for corresponding mime type is incremented when user opens editor. Editors opened during IDE startup ie. when window system is restored are NOT counted.

Parameters:

Parameter Description Values
param[0] Mime type. Example:
text/x-java
param[1] Number of editors with param[0] mime type opened by user during IDE session. Example:
10


USG_PERSISTENCE_XML_CREATED

The USG_PERSISTENCE_XML_CREATED event record is logged if persistence.xml file is created in a project, include one parameter:

Parameter Description Values
param[0] persistence.xml version/jpa version Example: "1.0" or "2.0"


USG_PERSISTENCE_ENTITY

The USG_PERSISTENCE_ENTITY event record is logged if entity class is created with wizard.

USG_PERSISTENCE_ENTITY_DB_CREATED

The USG_PERSISTENCE_ENTITY_DB_CREATED event is logged is entity classes are generated from database, include one parameter:

Parameter Description Values
param[0] number of generated entity classes Example: 17


USG_PERSISTENCE_CONTROLLER_CREATED

The USG_PERSISTENCE_CONTROLLER_CREATED event record is logged if jpa controllers for entity classes are generated(applies to jsf from entity wizard also), include one parameter:

Parameter Description Values
param[0] number of generated jpa controller classes Example: 11


USG_PERSISTENCE_SESSIONBEAN

The USG_PERSISTENCE_SESSIONBEAN event record is logged if session beans from entity classes are generated (applies to jsf from entity wizard also), include one parameter:

Parameter Description Values
param[0] number of generated session beans Example: 1


USG_PERSISTENCE_JSF

The USG_PERSISTENCE_JSF event is logged if JSF pages was generated for entity classes, include two parameter:

Parameter Description Values
param[0] number of entities Example: 3
param[1] pages language Example: "JSP" or "Facelets"


USG_PERSISTENCE_DETECTED

The USG_PERSISTENCE_DETECTED event is logged when usage of jpa functionality in project is detected - only first time, include one parameter:

Parameter Description Values
param[0] type of usage(String) Example: "CLASS" or "XML"


USG_START_PAGE_LINK

This event is logged when a link is clicked on the welcome page. This can be either a link which initiates an action in the IDE or a link which opens web browser.

Parameter Description Values
param[0] URL(String) - unique identifier for a welcome page link Example: "open recent project", "activate features", "http://netbeans.org/kb/trails/cnd.html"


USG_SHOW_START_PAGE

This action is logged when the value of "Show start page" checkbox in the bottom welcome page is changed.

Parameter Description Values
param[0] Value(Boolean) - whether the value has been set to on/off Example: on/off


USG_JSF_INCLUDED_SUITE

The USG_JSF_INCLUDED_SUITE event is logged if there was added JSF component library into the web project with JSF framework. It includes one parameter:

Parameter Description Values
param[0] JSF suite name - String, "|" separated framework names Example: Primefaces|RichFaces


USG_HUDSON_SERVER_REGISTERED

The USG_HUDSON_SERVER_REGISTERED event is logged when Hudson server was registered in the IDE. It includes no parameters.


USG_HUDSON_JOB_CREATED

The USG_HUDSON_JOB_CREATED event is logged when new Hudson build job is created via IDE. It includes one parameter:

Parameter Description Values
param[0] project type the build job is created for Example: org.netbeans.modules.php.project.PhpProject


USG_SEARCH_TYPE

The USG_SEARCH_TYPE event is logged after first opening of editor search in netbeans session. It includes one parameter:

Parameter Description Values
param[0] search behavior "default" (Enter to find next), "closing" (Enter to finish search)


USG_UNIT_TESTS_LIBRARY

The USG_UNIT_TESTS_LIBRARY event is logged, once per project in a netbeans session, when a test is created or run. It includes one parameter:

Parameter Description Values
param[0] JUnit library version e.g. JUNIT 3 or JUNIT4


USG_TEST_RUN_JS

The USG_TEST_RUN_JS event is logged, once per project in a netbeans session, when JS tests are run. It includes two parameters:

Parameter Description Values
param[0] project type (identifier) [string] e.g. org.netbeans.modules.php.project
param[1] JS testing provider identifier [string] e.g. Karma


USG_TEST_CONFIG_JS

The USG_TEST_CONFIG_JS event is logged when JS testing provider is selected. It includes two parameters:

Parameter Description Values
param[0] project type (class name) [string] e.g. org.netbeans.modules.php.project.PhpProject
param[1] selected JS testing provider identifier [string] e.g. Karma


USG_TEST_RUN_PHP

The USG_TEST_RUN_PHP event is logged, once per project in a netbeans session, when PHP tests are run. It includes one parameter:

Parameter Description Values
param[0] PHP testing provider identifier ["|" separated string] atoum


USG_TEST_CONFIG_PHP

The USG_TEST_CONFIG_PHP event is logged when PHP testing providers are selected. It includes one parameter:

Parameter Description Values
param[0] selected PHP testing provider identifiers ["|" separated string] atoum


USG_BOWER_INSTALL

The USG_BOWER_INSTALL event is logged when user installs bower components via Bower Install action.


USG_NPM_INSTALL

The USG_NPM_INSTALL event is logged when user installs node modules via Npm Install action.


USG_GRUNT_BUILD

The USG_GRUNT_BUILD event is logged when user invokes grunt within the IDE.

USG_GULP_BUILD

The USG_GULP_BUILD event is logged when user invokes gulp within the IDE.

Web Services Events

USG_WEBSVC_WIZARD

The USG_WEBSVC_WIZARD event is logged when a web service wizard is used.

Parameters(5):

Parameter Description Values
param[0] WS Stack (technology) e.g. JAX-WS, JAX-RPC, JAX-RS
param[1] project e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"
param[2] J2EE Module version e.g. "2.4", "2.5", "3.0" for web projects, "3.0", "3.1" for EJB, or null in not applicable (j2se project)
param[3] name of the wizard e.g. WS FROM JAVA, WS FROM WSDL, WS CLIENT, REST FROM PATTERNS, REST FROM ENTITY, ..
param[4] important wizard option e.g. FROM FILE, FROM URL, (ws client), STATELESS EJB, SERVLET (soap ws), STANDALONE, CONTAINER (rest from patterns), or null in not applicable


USG_WEBSVC_ACTION

The USG_WEBSVC_ACTION event is logged when some web service action is invoked.

Parameters(2):

Parameter Description Values
param[0] WS Stack (technology) e.g. JAX-WS, JAX-RPC, JAX-RS
param[1] action name e.g. CALL WS OPERATION, TEST, TEST REST, CONFIGURE HANDLERS, EDIT WS ATTRIBUTES, GENERATE WSDL, CONVERT TO REST, ...


USG_WEBSVC_DETECTED

The USG_WEBSVC_DETECTED event is logged when a first Web Service/REST Resource in project is detected. E.g. WS/REST is created by wizard, or WS/REST is created by annotating java class manually.

Parameters(3):

Parameter Description Values
param[0] WS Stack (technology) e.g. JAX-WS, JAX-RS
param[1] project e.g. "org.netbeans.modules.web.project.WebProject", "org.netbeans.modules.maven.NbMavenProjectImpl"
param[2] object that has been detected e.g. SERVICE, REST RESOURCE


USG_BUGTRACKING_QUERY

The USG_BUGTRACKING_QUERY event record is logged when a bugtracking query is invoked

Parameters(3):

Parameter Description Values
param[0] Issue Tracker Bugzilla, Jira
param[1] Query name My Issues, All Issues
param[2] Kenai true, false
param[3] Issues count integer


USG_BUGTRACKING_AUTOMATIC_REFRESH

the USG_BUGTRACKING_AUTOMATIC_REFRESH event record is logged when a automatic query refresh is set on or off

Parameters(3):

Parameter Description Values
param[0] Issue Tracker Bugzilla, Jira
param[1] Query name My Issues,
param[2] Kenai boolean
param[3] State boolean


CND Specific Events

USG_CND_PROJECT_ACTION

the USG_CND_PROJECT_ACTION event record is logged when user does any project action (run, debug etc) and contains a list of project specific information

Parameters(7):

Parameter Description Values
param[0] action e.g. run
param[1] project type e.g. MAKEFILE, APPLICATION, STATIC_LIB etc.
param[2] toolchain flavor e.g. GNU
param[3] toolchain family e.g. GNU
param[4] host e.g. LOCAL or REMOTE
param[5] platform e.g. Solaris-x86
param[6] IDE kind e.g. cnd, dbxtool


USG_CND_REFACTORING

the event USG_CND_REFACTORING record is logged when user performs any refactoring

Parameters(2):

Parameter Description Values
param[0] Refactoring type e.g. FIND_USAGES, RENAME, GENERATE
param[1] Refactoring specifics e.g. FROM_EDITOR, DELEGATE_METHOD, GETTER_SETTER


USG_CND_HYPERLINK_TOOLTIP

the event USG_CND_HYPERLINK_TOOLTIP record is logged when user activates hyperlink tooltip on a class, method or macro

Parameters(1):

Parameter Description Values
param[0] Object type e.g. AltMacroHyperlinkHint, AltMethodHyperlinkHint, AltClassHyperlinkHint


USG_CND_HYPERLINK_METHOD

the event USG_CND_HYPERLINK_METHOD record is logged when user uses alternative hyperlink on a method

Parameters(1):

Parameter Description Values
param[0] Hyperlink type e.g. ALT_HYPERLINK

USG_CND_HYPERLINK_CLASS

the event USG_CND_HYPERLINK_CLASS record is logged when user uses alternative hyperlink on a class

Parameters(1):

Parameter Description Values
param[0] Hyperlink type e.g. ALT_HYPERLINK

USG_CND_HYPERLINK

the event USG_CND_HYPERLINK record is logged when user uses hyperlink

Parameters(1):

Parameter Description Values
param[0] Hyperlink type e.g. GO_TO_DECLARATION, ALT_HYPERLINK

USG_CND_INCLUDE_HYPERLINK

the event USG_CND_INCLUDE_HYPERLINK record is logged when user uses hyperlink on included files

Parameters(1):

Parameter Description Values
param[0] Hyperlink type e.g. GO_TO_DECLARATION, ALT_HYPERLINK

USG_CND_SHOW_INCLUDE_HIERARCHY

the event USG_CND_SHOW_INCLUDE_HIERARCHY record is logged when user activates include hierarchy view

USG_CND_SHOW_MACRO_EXPANSION

the event USG_CND_SHOW_MACRO_EXPANSION record is logged when user activates macro expansion view

USG_CND_PROFILE_ON_RUN

the event USG_CND_PROFILE_ON_RUN record is logged when user changes "profile on run" project setting

Parameters(1):

Parameter Description Values
param[0] state e.g. ON or OFF

USG_CND_PROFILE_INDICATORS

the event USG_CND_PROFILE_INDICATORS record is logged on every project run and contains a list of enabled indicators

Parameters(1):

Parameter Description Values
param[0] enabled indicators e.g. dlight.tool.sync: dlight.tool.cpu

USG_CND_UNIT_TESTS_CPPUNIT

the event USG_CND_UNIT_TESTS_CPPUNIT record is logged when user creates a new CppUnit test

USG_CND_UNIT_TESTS_CUNIT

the event USG_CND_UNIT_TESTS_CUNIT record is logged when user creates a new CUnit test

USG_CND_UNIT_TESTS_SIMPLE_CPP

the event USG_CND_UNIT_TESTS_SIMPLE_CPP record is logged when user creates a new C++ Simple test

USG_CND_UNIT_TESTS_SIMPLE_C

the event USG_CND_UNIT_TESTS_SIMPLE_C record is logged when user creates a new C Simple test

USG_CND_LAUNCHERS

the event USG_CND_LAUNCHERS record is logged on every launchers' file reload and contains a number of launchers registered

Parameters(1):

Parameter Description Values
param[0] Launchers count integer

USG_CND_LAUNCHER_EXECUTOR

the event USG_CND_LAUNCHER_EXECUTOR record is logged on every launcher's action and contains a type of action

Parameters(1):

Parameter Description Values
param[0] Action type Build, Run, Debug

CDI Events

USG_CDI_BEANS_OPENED_PROJECT

The USG_CDI_BEANS_OPENED_PROJECT event is logged when a project containing beans.xml is opened.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_BEANS_WIZARD

The USG_CDI_BEANS_WIZARD event is logged when a beans.xml wizard is finished in the project.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_BEANS_FIX

The USG_CDI_BEANS_FIX event is logged when a beans.xml is created via editor hint fix.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_CREATE_QUALIFIER_FIX

The USG_CDI_CREATE_QUALIFIER_FIX event is logged when a qualifier is created via editor hint fix.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_CREATE_IBINDING_FIX

The USG_CDI_CREATE_IBINDING_FIX event is logged when an interceptor binding is created via editor hint fix.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_GENERATE_INTERCEPTOR

The USG_CDI_GENERATE_INTERCEPTOR event is logged when an interceptor is generated via editor "Insert Code..." context popup menu action.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_INSPECT_CDI

The USG_CDI_INSPECT_CDI event is logged when "Inspect CDI" context editor popup menu action is invoked.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_GO_TO_INJECTABLE

The USG_CDI_GO_TO_INJECTABLE event is logged when "GoTo Injectable" context editor popup menu action is invoked.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_GO_TO_DECORATOR

The USG_CDI_GO_TO_DECORATOR event is logged when "GoTo Decorator" context editor popup menu action is invoked.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_INSPECT_CDI_GLYPH

The USG_CDI_INSPECT_CDI_GLYPH event is logged when "Inspect CDI" is invoked via glyph gutter action in the editor.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_GO_TO_INJECTABLE_GLYPH

The USG_CDI_GO_TO_INJECTABLE_GLYPH event is logged when "GoTo Injectable" is invoked via glyph gutter action in the editor.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"

USG_CDI_GO_TO_DECORATOR_GLYPH

The USG_CDI_GO_TO_DECORATOR_GLYPH event is logged when "GoTo Decorator" is invoked via glyph gutter action in the editor.


Parameters(1):

Parameter Description Values
param[0] Project type e.g. "org.netbeans.modules.java.j2seproject.J2SEProject", "org.netbeans.modules.web.project.WebProject"


USG_LOOK_AND_FEEL

The USG_LOOK_AND_FEEL is logged just once during each IDE session to track the usages of various look and feel implementations.


Parameters(2):

Parameter Description Values
param[0] Look and feel ID e.g. Metal, Windows, Aqua, Nimbus etc. If it is a dark-themed look and feel then it is prefixed with DARK
param[1] Look and feel name The name may differ from the ID if it's a custom look and feel implementation based on some basic look and feel class.
Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo