Getting Started - What's New - Version 4.0.1
In This Topic
New Features in This Release
Notifications to Slack and HipChat
You can configure any notification to post a message to a Slack Channel or HipChat Room. These notifications are formatted to provide summaries and links of information using the formatting available in each platform.
To configure these notifications, go to the Administration area of your site and add each of your Slack Channels or HipChat Rooms as External Services. Then, set up a notification to route events to them.
Notifications can Send to Multiple Users and Services
Previously if you wanted to notify two different users for the same event it was necessary to configure two separate notifications. With the introduction of external services this was redesigned so a single notification can be dispatched to any number of users and services.
User Configurable Notifications
Previously only administrators could configure notifications. Now end users can see all of the notifications that apply to them and can add, edit, or remove notifications that are exclusively for them.
Extended Activity Context
The activity context which shows in the heading area when drilling into a list from a top-level navigation item has been extend to work from most lists of items in the UI, making it easier to iterate through any list in the system.
Google Analytics Integration
The Loupe Web User Interface can now send tracking events to Google Analytics. Self-hosted Loupe Servers can optionally configure this to provide their own tracking of what features are being used within Loupe itself. This information is not part of the normal Gibraltar Software CEIP data and is disabled by default for self-hosted servers.
Improved API and Web UI Security
The cryptographic session key used when authenticating from Loupe Desktop to the Server is now significantly longer and is based on the RSA Key pairs managed by the Windows Crypto API already used for encrypting secure data within Loupe instead of using the ASP.NET WebForms authentication ticket system. This eliminates problems where keys were being rotated too quickly in clusters, causing errors with Loupe Desktop, and is a more cryptographically secure approach.
Some methods in the Loupe Server JSON API incorrectly allowed anonymous calls. While these methods did not return sensitive information, they couldn't be accurately audited and created a potential attack surface against the Loupe Server. These have been changed to require authentication.
Improved Performance
Common operations like dashboard queries and events for review were modified to perform faster and more consistently on a wider range of data. For example, the previous version slowed down when there were many thousand or more events for review. Likewise the event cleanup feature and log event redaction features were redone to apply much faster over large sets of data.
To work better with SQL Azure a number of SQL schema changes were made that lower the load Loupe places on the SQL Server. Depending on the performance of your SQL Server you will see improved response time ranging from modest to dramatic (for slower servers).
Other Web Improvements
In addition to the major new features, a number of smaller enhancements were added:
- Site User List in Administration now displays the number of users that are allowed.
- Issue display has a quick access button for adding external links.
- Bar charts support selection by clicking the label as well as the bar.
- Search now automatically selects the first tab with results.
- Computers display now has a Users tab for all of the application users that have used that computer.
- An application event can now be added to an existing suppressed or resolved issue.
- Automatic retry of database operations performed for the web interface due to transient failures. Previously this was only available for the API requests used by the Agent.
- The error display (shown when the server returns a 500 error on a request) now hides automatically if you navigate to a new page (since the error no longer applies)
Other Windows Improvements
In addition to the major new features, a number of smaller enhancements were added to Loupe for Windows:
- Select Time frame Dialog uses Time Zone Setting: The dialog that displays when opening a large session for selecting a region of the data to open now shows all timestamps with respect to the time zone setting, making it much easier to look at when an event is happening in the session summary and open the session to the right time frame.
- Live Sessions display event and user information from the Server: The list of remote live sessions available from a server display the list of events and application users in each session. Previously this was only displayed in the session views based on complete log files.
- Live Sessions display sorts by Computer Name by default: From our CEIP data we've noticed most users resort the live sessions display to order by computer instead of end date by default. We've changed how this view displays to match that usage.
- Chart Groups support Select All: When charting a metric and selecting a group's details you can now use Control-A to select all. This is particularly convenient when analyzing data collected by the Loupe Agent for Entity Framework.
Extensibility Improvements
The Extensibility API has additional types and properties to support:
- Application User Mode enumeration is exposed for each application to clarify whether user information is being collected or not and how to display user information for each session.
- Application exposes a combined and de-duplicated product/application caption property which uses the same logic Loupe uses for displaying a shortened combined caption.
- Session Summary exposes the computer information related to the session to provide tracking information unique to each computer.
- Issues expose the unique issue Id, number of users affected, and the display caption for the status.
- Application Events expose the number of users affected, a link to the last user affected (if available), the highest release type affected, and the display caption for the severity.
There are no breaking changes for the API but the Assembly version has been updated to reflect the additional properties and types. Existing extensions will not need to be recompiled but if updated to use the latest package will not work with an older installation of Loupe.
Compatibility
Loupe 4.0 is generally backwards compatible with 3.0 with the following notes:
- Agent: Requires Server version 4.0 and Desktop 4.0 due to new data types introduced in this version.
- Server: Fully backwards compatible with older Agents. Older Loupe Desktop clients will not be able to use AddIns.
- Desktop: Compatible with Server versions 3.7.0 and later. Compatible with any version of Agent.
- Extensions must be modified: Any Loupe Addin developed for an Loupe 3.* will need to be updated to use the new Loupe Extension types and repackaged. Confirmation information has been moved so each extension will need to be reconfigured once it is installed. See Loupe Extensions - Getting Started for more information.
.NET 4.5 Required for Desktop and Server: Changes to Loupe Desktop and Loupe Server require .NET 4.5 to be installed. There is no change to the Agent - it still works with .NET 2.0 SP1 and later.
Defects Fixed In This Release
Agent
- Fixed: Setting the application type during configuration disables automatic product, application, and version detection.
- Fixed: Archiving a session file fails if a file already exists with the same name in the archive folder.
Desktop
- Fixed: Status bar updates can display in colors that are very hard to read.
- Fixed: Recent Sessions context menu Save option doesn't perform any action.
- Fixed: Missing assembly exception can be thrown at runtime.
- Fixed: Null reference exception when connecting to a server and the server isn't available (or some other connection problems).
- Fixed: Recent sessions list doesn't update for server repositories.
- Fixed: Repeatedly prompts for credentials even when canceled.
- Fixed: Credentials dialog displays with OK enabled when there is no user or password specified
- Fixed: Cross-thread operation exception when changing new status of session from some grid controls.
- Fixed: Displaying milliseconds in log data results in 12-hour time regardless of current culture settings.
- Fixed: Attempting to open a session without any data files from a repository indicates the files are corrupt instead of no files available.
- Fixed: Server Repositories don't respect the time zone setting.
- Fixed: Session Events display doesn't show design-time sample values when there are no session events for a session.
- Fixed: Sessions don't display custom properties for the first batch of sessions loaded from the server during initialization.
- Fixed: All session events for a session are loaded, regardless of how may there are resulting in terrible performance for sessions with a large number of unique events.
Server
- Fixed: Fails to create Session_Categorization record when a repository default promotion level is configured (causing session to not display in several parts of the web UI)
- Fixed: Live Sessions server can hang with high CPU utilization.
- Fixed: Application Event Notifications are sent even if issue rule should prevent Application Event from being eligible for notification.
- Fixed: Enterprise servers treat expired maintenance as having an expired license.
- Fixed: Manual Activation doesn't work for previously-activated license keys.
- Fixed: Some database operations will fail with Index Out Of Range exception when retried due to a retryable error.
- Fixed: Standard Edition servers attempt to load all extensions regardless of whether they're enabled.
- Fixed: Standard Edition incorrectly provides enable/disable options for extension store which then report exception if used.
- Fixed: Active Directory integration eventually stops returning results and may require OS restart to restore functionality.
- Fixed: Server work items in process when the service exits are not returned to the queue until the service restarts.
- Fixed: Log Event Redaction recalculation can be very slow and miss some events for larger repositories.
- Fixed: Some notification rules may fail to save if they have sufficiently elaborate filters due to an overly-long caption that can't be recorded.
- Fixed: Application Version Adoption View sub-tabs are not displayed.
- Fixed: Add to existing issue from an event shows no events when the UI is not in application context.
- Fixed: Application badges have inconsistent tooltips.
- Fixed: Application User generates exception when displaying in some cases.
- Fixed: Application Version Description & release note fields don't save on edit.
- Fixed: Searches re-run after changing application on the navigation run with the original input.
- Fixed: Creating an issue manually uses the caption of the latest occurrence instead of the event (when overridden).
- Fixed: Creating an issue manually while displaying an application event can show "undefined" in the heading area.
- Fixed: Dashboard fields that are auto-updated from the server can show white background on hover instead of grey.
- Fixed: Initial connection instructions don't automatically disappear from dashboard when the first data arrives to an empty repository.
- Fixed: Issues card display (used on dashboards) displays raw application version, not caption.
- Fixed: Left navigation doesn't highlight when user navigates using content-area selection.
- Fixed: Activity context lists of items are not consistently sorted the same way as the original list.
- Fixed: Source file information is not displayed for occurrence information on events.
- Fixed: Selecting Administration from user menu doesn't always change left navigation to show Administration items.
- Fixed: Navigating to user profile doesn't clear left-navigation selection.
- Fixed: The heading area displayed overly tall in Microsoft IE 10, covering up content.
- Fixed: Application shortcut menu on upper left was unreliable in Microsoft IE 10.
- Fixed: Enterprise Edition Site administrators that are not users of a repository can't view sessions or the repository users list.
- Fixed: Enterprise Edition Site administrators that are not users of a repository should not be given option to favorite applications.
- Fixed: Application Version Statistics grids would not populate when related chart bar was selected for some charts, such as Sessions by Computer.
- Fixed: Session card view show last user for multi-user applications (which is misleading)
- Fixed: Application events and Issue activity contexts remove items on change even when they shouldn't (such as with Top Application Events)
- Fixed: Enterprise Edition when a user updates their profile it will revert their access in other repositories to a standard user if they are an administrator.
- Fixed: Application User display doesn't show Last Seen or Last Computer if they weren't included in a warning or error on their most recent session.
- Fixed: Session Users list has empty first seen and last seen columns.
- Fixed: Fails to display details for events with exceptions that have no user stack frames.
- Fixed: User may be immediately signed back in after signing out.
- Fixed: In some error scenarios log messages can't be sent from the web client to the server, resulting in very slow responsiveness in the UI and a constant red error being displayed.
- Fixed: Adding an event to an existing issue outside of an activity context doesn't refresh the heading display for the event, continuing to display the original status and options.
- Fixed: Activity view should auto-hide when clicked off.
- Fixed: Creating an issue from an event with HTML reserved characters defaults to a caption with HTML-escaped values.
- Fixed: Requests for missing pages return raw ASP.NET 404 error instead of formatted page.
- Fixed: Navigating to session from search displays application version subnavigation menu instead of usage menu.
- Fixed: Enterprise Edition users get errors due to missing repository selection on a number of link transitions.
See Also
.NET Framework
Loupe Extensions
Using Loupe Server