- HTTP 4xx statuses should not mark an API as unhealthy - PR #817
- Support marking APIs as healthy/unhealthy - PR #812
- Prevent multiple data races around APIs loadbalancing and the Sensu data - PR #802
- Use a RWMutex to optimize read access to the Sensu data - PR #802
- Refactoring of the fetcher's goroutine coordination - PR #802
- Decrease log verbosity of the
warn
level - PR #802
- Properly close the modal window when deleting multiple clients
- Add support for client invalidation - PR #24
- Update
mapstructure
dependency to prevent race conditions and segfaults - Issue #799
- Upgrade dev dependencies
- The fetching and building of data from multiple Datacenters will now happen concurrently - PR #781 PR #784
- Add confirmation prompt when deleting silenced entry that could affect mulitple clients - Issue #767
- Silenced entries can now be scheduled (requires Sensu server 1.2.0) - Issue #769
- Use
PORT
environment variable if available - Issue #772 - Both
expire_on_resolve
andexpire
can be configured when creating a silenced entry - Issue #776
- Properly handle chunked transfer encoding from Sensu API - Issue #751
- Fix select element background color with uchiwa-dark theme - Issue #763
- Fix dropdown menus height - PR #17
- Hide 'Issue Request' button for standalone checks - Issue #754
- Replace 'never' expiration with 'on resolve', if applicable, on silenced view - Issue #764
- Fix syntax error in RPM post script - Issue #760
- Fix typo in TLS cipher list - PR #759
- Validate both check & client subscriptions when determing if a check is silenced - Issue #755
- Fix logrotate configuration file permission - Issue #757
- Fix Travis CI builds for both uchiwa & uchiwa-web projects
- Upgrade
istanbul
&grunt-contrib-watch
dependencies
- Fix the display of Uchiwa configuration in info view - PR #753
- Fix the Uchiwa logo in Firefox - Issue #749
- Allow custom build of packages with Docker - PR #718
- Removed 3DES cipher algorithms from default suite - Issue #688
- The TLS config is now configurable for HTTPS server - Issue #688
- Fixed the automated Docker images build process - Issue #742
- Docker images now use Go 1.9.2 - Issue #731
- Respect line breaks of results output - Issue #708
- Prevent a panic when the response content length is unknown - Issue #725
- Packages now provide a logrotate configuration - Issue #703
- Use pagination on Sensu API events endpoint - Commit 2ba0508b
- Add tracing attribute to enable HTTP client tracing - PR #720
- Properly initialize Sensu APIs HTTP clients
- Optimize the HTTP client used with Sensu APIs - PR #719
- Additional Sensu server metadata in datacenters view - Issue #706
- Add a type filter to the checks view - Issue #310
- Support issuing check request for a particular client - PR #2
- Better handling of Sensu objects starting with a
.
- Issue #710
- Improve event status filtering by handling unknown statuses greater than 3 PR #1
- New logo!
- Consider clients subscriptions when determining if a check is silenced - Issue #689
- Fix URL shortening with special characters - Issue #690
- Fix the client status filter - Commit 0a66d72
- Display the silenced creation timestamp - Commit 47db92f
- Prevent empty events view upon login
- Events output must be truncated with ellipsis
- Fix checkboxes in the checks view - Issue #681
- Client creation is now possible from the clients view - PR #678
- Client edition is now possible for all clients - PR #678
- Identify flapping checks in the events view - Issue #673
- Properly wrap text with URLs in the client view - Issue #679
- Fix bulk silencing for clients with similar names - Issue #677
- Add protection against Clickjack/UI Redress attacks - PR #680
- Add a check view - Issue #672
- Add a 'not healthy' option to status filter in clients view - Issue #445
- Fix regex queries on fields within the check or client object - Issue #674
- Shorten long URLs in the client view - Issue #629
- Prevent a user from accessing the login page if authentication is disabled
- Force the browser location to the login page upon logout
- Replace Godeps with govendor for Go vendoring - Commit 91fd100
- Prevent caching of deprecated assets when upgrading - Issue #666
- Fix bulk silencing when choosing a duration and/or a reason - Issue #667
- Support negative lookahead for search queries - Issue #664
- Increase verbosity for datacenters connection errors - Issue #663
- Upgrade to Angular 1.6 - Issue #653
- Improve responsive design with long text - Issue #641
- Fix a visual glitch when refreshing a page on Firefox - Issue #654
- Refactoring of the silencing modal window - Issue #644
- Support edition of proxy clients in the Sensu client registry - Issue #651
- Display new information about Sensu servers, available since Sensu 0.28, in a new datacenter view - Issue #652
- Support custom favicons - Issue #606
- Set the Secure flag on authentication cookies when serving over HTTPS - Issue #656
- Add Cross Site Request Forgery (XSRF) protection - Issue #638
- Use Travis CI for the build pipeline - Issue #633
- The bulk actions menu should be shown when at least one element is selected
- Default to the new option On resolve when silencing an element - Issue #631
- Responsive web design - Issue #616
- Prevent reflected cross-site scripting (XSS) attacks - Issue #618
- Prevent race conditions in the logger package - Issue #621
- Fix recursive searches while using key-value queries - Issue #624
- Increase accuracy of the silenced attribute for Sensu events - Issue #602
- Add the TTL attribute to the checks view - Issue #496
- Use relative URLs for Uchiwa API resources - Issue #600
- Fix silencing from the client view - Issue #601
- Prevent an empty popover when all clients are healthy - Issue #607
- Display the output of all checks on the client view - Issue #612
- Use the ngSrc directive to prevent failed requests when loading the logo URL - Issue #599
- Also display the custom logo on the login page
- Fix the user dropdown when authenticated
- Fix the theme selection on the settings view
- Adjust the error description if the Uchiwa backend config is unavailable - Commit 5de458a
- Prevent any caching of the index.html file in order to facilitate the upgrade process - PR #597
- Do not apply a filter on the status attribute in the client view
- Fix a typographical error in the clients popover of the sidebar
- Added various users-level configuration attributes to customize Uchiwa
- Support regex and key:value search queries
- Sidebar popovers redesign
- Aggregates can now be deleted
- Show the reason in the silenced view
- Refactoring of the Angular services
- The checks and subscriptions filters now only show values associated with a datacenter if one is selected in the datacenters filter
- Improve notification messages - Issue #467
- Move iframes to their own panels in the client view - Issue #360
- Pre-0.26 Sensu APIs are now marked as deprecated in the logs - Issue #590
- Refactoring of the Angular bootstrapping
- Remove underscore.js dependency
- Allow silencing of checks and subscriptions across datacenters
- Display rich aggregates data
- The pagination counter should consider the filters applied - Issue #431
- Do not panic when an encrypted password is invalid - Issue #549
- Fix the silenced filters - Issue #565
- Do not move an image from the command attribute to its own box - Issue #558
- Allow choice of silencing entries when un-silencing an item
- Allow choice of custom expiration when creating a silence entry - Issue #570
- The /health endpoint can return a 503 HTTP response code on error - Issue #557
- Fix silencing with no expiration
Requires Sensu >= 0.26
- Prevent race condition when using the Uchiwa filters - Issue #543
- Fix styling of the uchiwa-dark theme
- Support built-in silencing in Sensu 0.26 - Issue #539
- Filter per-client subscriptions - Issue #534
- Add support for encrypted passwords - PR #448
- Display last_ok attribute in events view
- Remove various debugging traces - Commit #d249aa4
- Upgrade to Go 1.6.3 with vendoring support - PR #528
- The filters package now implements an interface for easier use - PR #528
- Refactoring of the authorization logic - PR #528
- Add API token-based authentication - PR #525
- Prevent old alerts to be displayed inadvertently - Issue #512
- Fix iframes support - Issue #508
Use Alpine Linux as the base image for Docker images - PR #498
- The stashes could not be deleted from the stashes view - Issue #503
- Incorrect client attributes could be displayed on a client view - Issue #471
- The 'Show All' option should not use the current elements number - Issue #466
- The relative timestamp was not properly calculated on a stash view - Issue #456
- Refactoring of the Uchiwa API endpoints - PR #513
- Add support for upcoming Sensu 0.24.0 - PR #500
- Fix i386 packages - PR #31
- Add missing syntax highlighting on the client view - 1089a7d
- Fix the checks filter on the events view
- Prevent infinite pagination loop on the Sensu API - PR #478
- Add a detailed stash view - PR #90
- The HTML code for syntax highlighting was not always properly processed
- Add support for serving content over HTTPS - PR #441
- Fix version number for Debian packages - Issue #26
- Improved logging with log levels - PR #425
- Upgrade to Go 1.5.3
- Load Uchiwa configuration from directories - PR #416
- Issue check requests from the checks view - Issue #141
- Delete a client check result, requires Sensu 0.21.0 or later - PR #419
- Datacenters high availability (support multiple APIs for the same datacenter) - Issue #173 - Docs
- Static RSA keys for the JSON Web Tokens signature - Issue #394 - Docs
- Upgrade angular-toastr version to 1.6.0
- Fix the Hide Silenced Clients filter on the events view - Issue #412
- Display an error message when Uchiwa fails to contact its backend API
- Make sure to update the health and metrics data on all views
- Tweak the badges position on the sidebar
- History for all checks was not properly displayed on the client view - Issue #404
- Better handling of JIT clients with no timestamp
- Major performance improvements on the frontend, especially when manipulating ten of thousands of elements - Issue #399
- Use pagination when querying the Sensu API - Issue #397
- Refactoring of the client history in order to display rich information for all checks, including standalones, on the client view. Deprecating support for Sensu 0.12. - Issue #395
- Prevent undefined object when evaluating scope.metrics object in SidebarController - Issue #387
- Simplify Dockerfile and upgrade golang docker image to 1.5.1 - Issue #391
- Redirection to the login page should remove all query strings - Issue #385
- Add versioning to JS & CSS files to avoid caching with upgrades - Issue #386
- Set success style to the events sidebar icon when we have no events
- Prevent errors when an API endpoint returns null
- Dependency cleanup
- Implement a RESTful API and remove the get_sensu endpoint for Uchiwa backend - Issue #378
- Major frontend performance and stability improvement: use the newer Uchiwa RESTful API and store data into $scope instead of $rootScope
- Allow bulk removal of stashes
- Also display client's images in a dedicated panels on the client view - Issue #361
- Add progress bar into aggregate view
- Upgrade to Go 1.5.1
- Allow text selection without immediately firing ng-click - Issue #262
- Break long datacenter name into multiple lines - Issue #368
- Add username to stash content - Issue #356
- The /results Sensu API endpoint is not required yet - Issue #379
- Two events with the same client and check names could be mixed - Issue #375
- Recover from an unexpected type assertion when processing a client
- Prevent multiple status code within a single HTTP response on the /health endpoint
- Properly display username in navbar if authentication is enabled
- Order alphabetically the items in the checks filter
- Fix client view table for RO users
- Visual improvements to client view when resizing to a narrow view
- Fix favicon for Firefox - Issue #376
- Add support for Sensu Enteprise OpenLDAP driver - Issue #369
- Add support for Sensu Enteprise audit logging - Issue #370
- Add status filter on the clients and events views
- Add support for Sensu Enterprise dashboard
- Add username to stash content - Issue #356
- Replace silenced and critical icons
- Add support for audit logging - Sensu Enterprise Dashboard
- Reimplement iframe support - Issue #354
- Display any error with the http.ListenAndServe method - Issue #352
- Fix check result view for standalone checks - Issue #350
- Multiple users (RO & RW) can be defined in the configuration - Issue #343
- The theme setting is now saved in a cookie - Issue #331
- Display the output of all checks in the check result view - Issue #346
- Enhancements to the check result images
- The info view might have been incomplete
- Disable autocapitalization and autocorrection on the login view - Issue #296
- Remove unsupported characters in datacenter name - Issue #279
- Continue to pull the client details even when an error is returned - Issue #265
- Performance issues - Issue #337
- Display the output for all checks - Issue #322
- Various fixes and improvements to the backend - Issue #330
- Godep is now used to manage vendored dependencies
- Support for Sensu Enterprise dashboard features
- Refactoring of the Go packages
- Allow filtering by check on the checks view
- Include a result count when searching
- Better handling of invalid events - Issue #332
- A stash can only start now and not in the future
- Add profile picture to the navbar when logged
- Allow stash creation with no expiration - Issue #319
- Upgrade to angular-bootstrap 0.13.0 - Issue #319
- Import the palourde/auth library within the Uchiwa repository - Issue #314
- Refactoring of the stashes API endpoints - Issue #317
- Add relative times to stashes and clients views
- Add support for Github authentication driver (Sensu Enterprise)
- Add support for LDAP authentication driver (Sensu Enterprise)
- Allow stash creation with expiration longer than a few days - Issue #301
- Datacenter filter now performs a strict comparison - Issue #307
- Resolved events are now cleared from the clients view - Issue #309
- Show relative times for events
- Add datacenters view
- Order events by status, then by most recent
- Remove standalone property from checks view
- Show logout button when authentication is enabled
- Ship Google fonts with Uchiwa
- Reorganize the navbar and sidebar
- Panels styling
- Improvements to the aggregates view
- Unselect events after action in events view
- Fix stash expiration timestamp in stashes view
- Upgrade to AngularJS 1.3 - Issue #160
- Redesign of the panels header
- Add tooltip of items subscriptions on clients and events views
- Add Silenced Clients option to the Hide menu and show the acknowledgment status of the client in the events view
- Register uchiwa-web as a bower package to prevent dependencies issues - Issue #272
- Fix build issue with 0.5.0 release - Issue #273
- Add custom date functionality for stashes - Issue #251
- Aggregates support - Issue #255
- Use JSON Web Tokens (JWT) instead of HTTP basic authentication and implement a login page
- Catch possible exception while asserting the check name - Issue #259
- Display images when an URL has a port number
- Hide events with no client and no check
- Client names may not be unique
- Display the stash type on the stashes view (PR #249)
- Catch any error while asserting event attributes (Issue #236)
- Reuse http.Client on gosensu library (Issue #239)
- Verify the boolean type on richOutput function (Issue #247)
- Bulk actions support for events & clients (PR #201)
- Display an error page if a client is not found (Issue #200)
- Use
$interval
instead ofpollingFactory
(PR #215)
- Make sure to always close the connection to Sensu APIs (Issue #211)
- Hide clients name overflow in clients view (Issue #210)
- Fix design of modal window with dark theme (Issue #206)
- Allow Uchiwa to be ran behind a reverse proxy with a location (Issue #197)
- Display missing stash info from client view (PR #218)
- Apply filters to clients & events with bulk selections (PR #214)
- favicon.ico was empty or corrupt
- Imagey regex won't match hostnames or IP addresses
- Remove imagey-filter so http images do not use Google images proxy
- Allow for silenced checks to be hidden (Issue #176)
- Support invalid certificate on API for stash and client deletion
- Display the right check model and rich output when check returns 0
- Support API authentication for stash and client deletion
- Remove all WebSocket dependency (Issue #127)
- Backend refactoring in Go (Issue #127)
- Improve overall performance and stability
- Add alert badge in navbar when a datacenter is missing
- Stashes dropdown replaced with a modal dialog
- Add custom stash messages, and display them in stashes view (PR #158)
- Add links to DC hover menu (PR #152)
- Display data centers in alphabetic order (PR #153)
- Prettify JSON objects in client & event data (PR #170)
- Backend has been rewritten in Go.
node app.js
ornpm start
commands no longer works. - Make sure to run
npm install
when installed from source. - Integer values timeout and refresh within configuraton file are now handled as seconds instead of milliseconds. Any values >= 1000 will be converted to seconds during runtime.
- Pages /health/[sensu|uchiwa] now return the associated object content instead of the object itself. /health is not impacted.
- Allow client checks to be ordered by history, name, output and time (PR #149)
- Force toastr position when cookie is missing
- Remove HTML tags from toastr notifications
- Rich data output for links and images (Issue #86)
- Remove jQuery dependency (PR #132)
- Use angular-toastr module instead of toastr library (PR #132)
- Add real favicon (PR #145)
- Prevent XSS attacks through toastr library
- Use source property in events for masquerading (PR #134)
- Date timezone is now determined by the browser (PR #124)
- Move most of sensu.js library logic to AngularJS (PR #124)
- Avoid HTTP 500 errors on /health page (Issue #128)
- Improve stability when dealing with retrieved data (Issue #119)
- Fix authentication (PR #117)
- Prevent crash when no checks are received (PR #115)
- Automatic permalinks based on search filters (PR #111)
- Configurable date/time formatting (PR #103)
- Add /health page (PR #108)
- Uchiwa logs are now in JSON format (PR #109)
- Mark active page in sidebar
- Use Socket.IO 1.0 (PR #99)
- Use Express 4 (PR #109)
- Accessibility improvements for status circles (PR #105)
- Fix pill border overflow of datacenters list (PR #97)
- Better unit tests coverage (PR #101)
- Enable Travis CI
- Fix 'show all' option in clients view
- Display clients with no subscriptions (PR #104)
- Make sure to run
npm install
- Navbar icon now links to related page
- Perform a deep clone for public config display (Issue #78)
- New user interface! (Issue #55)
- Temporarily silence an element
- Filter and order by attributes
- Display a limited number of elements by default, to reduce page size
- Display custom attributes of checks/clients/events (Issue #58)
- Add an overview of each DC in the navbar
- Ability to link to a client and an incident (Issue #59)
- Filter clients by subscriptions and ability to link it
- Add an info page to display Sensu and Uchiwa basic information
- Dynamic page title (Issue #70)
- Optimize dark theme
- Change licence to MIT (same as Sensu)
- Better handling of unknown elements (Issue #59)
- Display proper information concerning check details (Issue #72)
- Client event might have shown wrong data
- Validate and initialize missing configuration for Sensu endpoints and Uchiwa
- The configuration file now use a standard JSON file (see migration notes below) (PR #66)
- Add Sass Grunt task (PR #67)
The configuration file is now a standard JSON file and therefore, has been renamed from config.js to config.json.
If you already have a config.js file, you can still force uchiwa to use it with, for example, the following command: node app.js -c ./config.js
or by modifing the init script if it was installed from the packages.
Refer yourself to the config.json.example file in doubt.
- Truncate checkout output in client modal for dark theme (Issue #57)
- Use underscore .each in utilityService
- Show proper clients & events counts in dashboard panels
- Use Docker build repository
- Use AngularJS Routing
- Manage 3rd party libraries with Bower
- Create Sass themes
- Updated font-awesome; use database icon for stashes.
- Stashes can have non-silence paths, use stash.path in stashesService
- CLI argument parsing for config
- Do not crash when Sensu return an empty object in dc.js
- Support multiple Sensu APIs
- Delete a client from the client view
- Improved error logging
- Display event.action instead of event.flapping in client view
- Support the upcoming release of Sensu 0.13.0
- Keep check details expanded in client view
- Use AngularJS in the frontend
- Add graphic of stashes and events
- Filter events, clients, stashes and checks
- Google font now protocol-agnostic
- Add documentation for running uchiwa behind a Nginx proxy
- Add .map files for javascript librairies
- Better handling of Sensu API path
- Add configuration value for HTTPS
- Use relative path for ressources and links