Commit Graph
766 Commits
Author SHA1 Message Date
Zachary Wasserman b59cd2b48b Accelerate checkins when hosts enroll (#1423)
Return `accelerate: 10` with distributed queries if we do not have host
details. This facilitates the host quickly joining all expected labels, as
`platform` gated label queries will not be returned until the detail queries
return with the platform.

Fixes #1421.
2017-03-21 09:17:38 -07:00
Zachary Wasserman 07e7d336dd Enable slow query log on dev DBs (#1437)
With this change, MySQL will log "slow" queries to the `mysql.slow_log` table.
2017-03-20 17:02:44 -07:00
Victor Vrantchan cab8ed7c00 remove references to missing bits (#1434) 2017-03-20 10:42:47 -04:00
Zachary Wasserman da096d7b50 Fix platform detection for CentOS6 (#1415)
On CentOS6 there is a bug in which osquery incorrectly reports an empty string
for platform. This PR fixes our detection of centos in this case.

Fixes #1339
2017-03-15 15:40:18 -07:00
Zachary Wasserman 715d908613 Update go-kit to 0.4.0 (#1411)
Notable refactoring:
- Use stdlib "context" in place of "golang.org/x/net/context"
- Go-kit no longer wraps errors, so we remove the unwrap in transport_error.go
- Use MakeHandler when setting up endpoint tests (fixes test bug caught during
  this refactoring)

Closes #1411.
2017-03-15 08:55:30 -07:00
Zachary Wasserman d3bf134c7e Add Ubuntu16.04 host to docker-compose (#1414)
Enables testing Kolide with a Ubuntu16 host running osquery
2017-03-15 08:53:54 -07:00
Jason Meller da53c534a1 Update CHANGELOG for 1.0.2 release (#1410) 2017-03-14 09:02:14 -04:00
Zachary Wasserman 0263adcd88 Set payload from argument ID in entity delete action (#1404)
This fixes a bug in which the frontend expected the entity ID to be returned in the response body of a deletion request. Because the API does not do this (and we don't want to make it do this), the ID needs to be made available for updating the UI after the request returns.

Fixes #1398
2017-03-14 08:40:53 -04:00
Kyle Knight a64d88ff67 Update Webpack to v2 (#1393) 2017-03-13 15:13:33 -04:00
Zachary Wasserman cc99f081fd Add a minimum threshold for the expected host checkin interval (#1397)
Adding this minimum helps prevent flapping of the online status.

Closes #1396.
2017-03-13 08:55:10 -07:00
Kyle Knight 28f0247654 Fix busted scrolling after full screen query results (#1400) 2017-03-13 11:20:34 -04:00
Kyle Knight 8121e7cf3a Add selected styles to Pack Row (#1379) 2017-03-13 09:32:47 -04:00
Zachary Wasserman 5781613249 Minor fixes in email footer (#1394) 2017-03-10 15:18:40 -08:00
Mike Stone c7535e8d8c Add Front-end Documentation (#1373) 2017-03-10 17:13:29 -05:00
Kyle Knight 9791e85881 Add styles to SMTP setup confirmation email (#1382) 2017-03-10 17:02:45 -05:00
Mike Stone a853acd172 Fix bug selecting targets when querying a host (#1366) 2017-03-09 13:01:15 -08:00
Zachary Wasserman b4e40cf466 Warn before running migrations (#1385)
- Refactor MigrationStatus() to return relevant info
- Warn before running migrations

Closes #1368
2017-03-09 10:40:52 -08:00
Mike Arpaia f510691ad0 Fix host status regression from #1334 (#1383) 2017-03-09 11:36:24 -07:00
Kyle Knight b23ab83336 Display loading icon until host details are saved (#1376) 2017-03-09 10:50:53 -05:00
Zachary Wasserman 84ffd1d5a3 Update MySQL definitions for Unicode support 🔥 (#1360)
- Set default database character set to utf8mb4
- Convert character sets for each table to utf8mb4
- Use utf8mb4 as charset in connection string

Closes #1268
2017-03-08 09:29:25 -08:00
Zachary Wasserman 343262b799 Warn on startup if migrations not completed (#1353)
- Add datastore method to check migration status.
- Print a warning on startup if migrations are not completed.

Fixes #1279
2017-03-08 09:17:07 -08:00
Kyle Knight 14fa984bd3 Update All platform text to use Icon (#1363) 2017-03-08 08:40:02 -08:00
Kyle Knight b875c05f4d Update Pack schedule query Platform to allow All or OSes (#1361) 2017-03-08 08:11:47 -08:00
Mike Arpaia 64e73ef357 Harden TLS server settings (#1367)
* Lower HTTP timeout settings.

  In an effort to provide a more resilient web server, timeouts are more strictly enforced by the Kolide HTTP server (regardless of whether or not you're using the built-in TLS termination). If your Kolide environment is particularly latent and you observe requests timing out, contact us at [help@kolide.co](mailto:help@kolide.co).

* Harden TLS server settings.

  For customers using Kolide's built-in TLS server (if the `server.tls` configuration is `true`), the server was hardened to only accept modern cipher suites as recommended by [Mozilla](https://wiki.mozilla.org/Security/Server_Side_TLS#Modern_compatibility).
2017-03-07 19:59:34 -07:00
Mike Arpaia e4db95d2b5 More sensible online status calculation (#1334)
Improve the mechanism used to calculate whether or not hosts are online.

Previously, hosts were categorized as "online" if they had been seen within the past 30 minutes. To make the "online" status more representative of reality, hosts are marked "online" if the Kolide server has heard from them within two times the lowest polling interval as described by the Kolide-managed osquery configuration. For example, if you've configured osqueryd to check-in with Kolide every 10 seconds, only hosts that Kolide has heard from within the last 20 seconds will be marked "online".
2017-03-07 19:47:51 -07:00
Mike Arpaia 8e61bfb945 Update changelog markdown format (#1372) 2017-03-07 14:30:00 -07:00
Mike Stone 658ee2f3ee Fix 907 - stop query when websocket finishes (#1371) 2017-03-07 16:24:30 -05:00
Kyle Knight 95b9e2c7d5 Fetch Targets after component is mounted (#1362) 2017-03-07 13:27:29 -05:00
Kyle Knight 13f06904ee Toggle small nav after leaving query page (#1355) 2017-03-06 17:34:30 -05:00
Kyle Knight 2e5955ab75 Fix busted delete host modal (#1359) 2017-03-06 17:27:12 -05:00
Kyle Knight facab79954 Update UI styles for Host Details card (#1317) 2017-03-06 10:37:06 -05:00
Victor Vrantchan 79f2528419 provide context for ServeFrontend 500 errors (#1349)
Closes #1343
2017-03-03 19:49:55 -05:00
Victor Vrantchan d65bf6ae61 do not return JSON response in healthz (#1350)
healthz should only return 200 or 500 response.
returning error messages in the HTTP response can leak sensitive connection information
The exact error is logged by the server instead.
2017-03-03 19:49:42 -05:00
Victor Vrantchan 4fb0b3c659 workaround for yarn node-sass issue (#1352) 2017-03-03 18:25:11 -05:00
Zachary Wasserman fa84415c13 Support osquery logger_tls_compress flag (#1346) 2017-03-03 14:43:11 -08:00
Mike Stone acca55ec74 Removes unused API client method stub (#1347) 2017-03-03 12:22:34 -05:00
Victor Vrantchan eff7ffa44f rotate osqueryd logs on SIGHUP (#1316)
rotate osqueryd logs on SIGHUP

Closes #1256

Note: Sometimes the test fails to rotate the log on SIGHUP, although
that doesn't appear to be the case with a long running process.
After some discussion and debugging with @zwass we agreed to call
t.Log and come back to this issue at a later time.
2017-03-03 12:21:48 -05:00
Mike Stone a56dba63a2 Get app to work in IE (#1344)
* Use lodash for endsWith support
* Fix IE Promise and Object.assign
2017-03-03 12:21:07 -05:00
Mike Stone 7a7fb9eac9 Select targets tests (#1307)
* Adds tests for the TargetDetails component

* Adds tests for Select Targets Menu

* Rename target_stub to target_mock

* Adds tests for the SelectTargetsDropdown & minor refactor
2017-03-03 10:05:03 -05:00
Zachary Wasserman 71a384f34a Show built in labels first in targets selector (#1338) 2017-03-02 15:40:50 -08:00
Mike Stone d747a471af Refactor API client (#1335)
* Isolate each API entity
* Improve code structure in API client and request mocks
* Standardize on a request mock structure
* Use helper for creating request mocks
* Adds Request class to handle API requests
2017-03-02 17:07:01 -05:00
Mike Stone 230b7a870d Refactor redux config (#1325)
* Refactor - redux entity actions

* Refactor - config entities reducer

* Replaces ReduxConfig with new Config class
2017-03-02 16:05:25 -05:00
Kyle Knight acd30332ec Render the spinner while hosts load (#1289) 2017-03-02 11:53:08 -05:00
Kyle Knight 89ee5b3aed Remove "All hosts" section in target selector when chosen (#1326) 2017-03-02 11:52:31 -05:00
Zachary Wasserman 3d6ca7d5a4 Use sockjs to gracefully degrade websockets (#1255)
Use the [SockJS Protocol](https://github.com/sockjs/sockjs-protocol) to handle
bidirectional communication instead of plain websockets. This allows
distributed queries to function in situations in which they previously failed
(Load balancers not supporting websockets, issues with Safari and self-signed
certs, etc.).

Also includes fixes to the JS message handling logic where slightly different
message delivery semantics (when using XHR) were exposing bugs.

Fixes #1241, #1327.
2017-03-01 13:14:26 -08:00
Zachary Wasserman 8a0ae4ad9b Add migration to ensure 'All Hosts' is complete (#1330)
Due to recreating the 'All Hosts' label in #1282, we get inconsistent counts
for hosts that have not checked in since that migration. This seems acceptable
for other labels, but it is important that 'All Hosts' really includes all the
hosts.

This migration adds all the hosts into that label.

Fixes #1329
2017-03-01 12:49:02 -08:00
Mike Arpaia f713c1fc08 Performance improvements for the packs API (#1331) 2017-03-01 12:56:13 -07:00
Kyle Knight 169535afab Fix max-height issue with Full Screen Query Results (#1323) 2017-03-01 13:11:09 -06:00
Zachary Wasserman 4561aedd1f Fix inconsistencies with sidebar label counts (#1328)
- Fix a bug that caused hosts between 24 and 25 hours old to appear new
- Ensure "platform" labels use the count provided by the server

Fixes #1270
2017-03-01 10:50:09 -08:00
Jason Meller e17b56f83b Prepare changelog for 1.0.1 release (#1315) 2017-02-27 12:23:47 -05:00