Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

UI Expand
titleJava

In order to use this component, the trace-sql-store profile must be active. More information on how to configure the application using Spring Profiles can be found here : Component configuration with Spring Profiles.

Add the artifact with groupId "com.blueriq" and artifactId "blueriq-component-trace-sql-store" as a dependency to your Blueriq runtime POM file if you want to depend on it.

UI Expand
title.NET

In order to use this component, make sure to have the BlueriqComponentTracing.dll in the /bin directory of your .NET webapp installation

...

UI Expand
titleJava

Use the following steps to configure the component datasource:

  1. If necessary, create a new datasource. See See Configuring JDBC database drivers for information on how to do this.
  2. The Trace SQL Store component is using the trace-sql-store datasource to store data. The trace-sql-store datasource can be configured using JDBC or JNDI.
    1. Using JDBC datasource :
      This this can be configured in the the  application-externaldatasources.properties file.When  When configuring external datasources, the externaldatasourcesthe externaldatasources profile should be enabled.Example configuration:

      Code Block
      languagepowershell
      titleapplication-externaldatasources.properties
      blueriq.datasource.trace-sql-store.url=jdbc:sqlserver://<database_url>:<port>;databaseName=bq_tracecomments;instance=SQLEXPRESSSQL_EXPRESS
      blueriq.datasource.trace-sql-store.username=<username>
      blueriq.datasource.trace-sql-store.password=<password>
      blueriq.datasource.trace-sql-store.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
      blueriq.hibernate.trace-sql-store.hbm2ddl.auto=validate
      blueriq.hibernate.trace-sql-store.dialect=org.hibernate.dialect.SQLServerDialectSQLServer2012Dialect
    2. Using JNDI datasource : this can be configured in the  application-jndidatasources.properties file When configuring JNDI datasources the jndidatasources profile  profile should be enabled.Example configuration:

      Code Block
      languagepowershell
      titleapplication-jndidatasources.properties
      blueriq.datasource.trace-sql-store.jndiName=java:/comp/env/jdbc/tracemain
      blueriq.hibernate.trace-sql-store.hbm2ddl.auto=validate
      blueriq.hibernate.trace-sql-store.dialect=org.hibernate.dialect.SQLServerDialectSQLServer2012Dialect
  3. Configuring the datasource from the Development Dashboard
    Go to Settings Widget → Datasources tab → On the left side menu : select trace-sql-store datasource. The same properties are available for configuration as from the properties file.   Make sure the corresponding profile is enabled (externaldatasources or jndidatasources)
  4. Hibernate settings
    These settings are done for each datasource type in the corresponding properties file, as in the examples above.

Supported dialects:

  • org.hibernate.dialect.SQLServer2012Dialect (for SQL Server)
  • org.hibernate.dialect.Oracle10gDialect (for Oracle)
  • org.hibernate.dialect.H2Dialect (for H2) (we do not recommend using a H2 database in production environments)

Supported hbm2ddl.auto values:

  • none
  • validate

 

 

UI Expand
title.NET

Configuring the database connection for the Tracing SQL Store component in .NET is done by adding a connection configuration to the 

Include Page
_PropertiesFileNet
_PropertiesFileNet
 file.

Example configuration:

Code Block
title.NET database configuration example
<hibernate-configuration>
  <session-factories>
    <session-factory name="TraceDao">
      <properties>
        <property name="connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />
        <property name="dialect" value="NHibernate.Dialect.MsSqlCeDialectMsSql2012Dialect" />
        <property name="connection.driver_class" value="NHibernate.Driver.SqlServerCeDriverSqlClientDriver" />
        <property name="connection.connection_string" value="Data Source=|DataDirectory|\LocalDB\TraceDB.sdfServer=HOST\SQLEXPRESS;Database=test;User Id=USERNAME;Password=PASSWORD;" />
        <property name="show_sql" value="false" />
        <property name="current_session_context_class" value="Aquima.WebApplication.WebPersistenceUtility.Session.CurrentHibernateSessionContext, WebPersistenceUtility" />
      </properties>
    </session-factory>
  </session-factories>
</hibernate-configuration>

Supported dialects:

  • NHibernate.Dialect.MsSql2012Dialect

 

For more information about configuring database connections, see Configuring database connections in .NET webapp.

Info

The Tracing SQL Store component looks for a database connection named "TraceDao" so make sure that this name is used in order to configure the Trace SQL Store properly.

All necessary DLL files the Trace SQL Store component depends on can be found in the /bin directory of the .NET webapp ZIP file.

Performance

The performance impact of the Trace SQL Store is minimal when used normally: to write trace messages to the database.

It is also possible to use the Trace SQL Store to query the trace engine database, like the timeline container does. The Trace SQL Store offers good performance as long as the result set is limited. For large scale analysis, when summaries or aggregates are desired, the Trace SQL Store is not recommended because it is primarily designed to return a list of trace entries. For these scenarios it is recommended to use SQL (or HQL) to query the database.