Commit graph

17 commits

Author SHA1 Message Date
Eric
f14ab358fe
2023-11-21 Website: Add new usage statistics (#15263)
Closes: #15255

Changes:
- Added the usage statistics added in
https://github.com/fleetdm/fleet/pull/14216 to the inputs of the
`receive-usage-analytics` webhook.
- Updated the `receive-usage-analytics` webhook to send the new usage
statistics to Datadog.
- Added attributes for the new usage statistics to the
`HistoricalUsageSnapshot` model.
- Removed the `columnName` from the `hostsStatusWebHookEnabled`
attribute of the `HistoricalUsageSnapshot` model, the name of this
column will be changed in the database when the new columns are added to
the databse table.
- Updated the usage statistics documentation to have the new statistics.


This PR requires database migrations. When this is approved and ready to
merge, we will need to:
- [ ] Merge this PR
- [ ] Put fleetdm.com into maintenance mode while the "Deploy Fleet
website" GH action runs.
- [ ] Add the new columns to the database table
- [ ] Change the name of the `hostStatusWebhookEnabled` column to
`hostsStatusWebHookEnabled`
- [ ] Set the default values for the new columns on the existing
records.
- [ ] When the website has finished redeploying, take it out of
maintenance mode.
2023-12-01 17:59:41 -06:00
Eric
29671f4249
Website: Update receive-usage-analytics webhook to limit size of requests sent to Datadog. (#15245)
Closes: https://github.com/fleetdm/fleet/issues/15243

Changes:
- Updated the `receive-usage analytics` webhook to send multiple
requests to Datadog, depending on the number of metrics built from
reported usage statistics. (Datadog has a request body limit of 512kb)
2023-11-21 10:15:59 -06:00
Eric
6a6f51dce6
Website: Update usage statistics webhook inputs and HistoricalUsageSnapshot model. (#15180)
Closes: #11812

Changes:
- Renamed the `hostStatusWebhookEnabled` attribute of the
`HistoricalUsageSnapshot` model to `hostsStatusWebHookEnabled` and
updated the definition to use the existing database column name.
- Updated the inputs of the `receive-usage-analytics` webhook to accept
a `hostsStatusWebHookEnabled` input.
- Updated the usage statistics documentation to have the [correct
variable
name](36e12d02e3/server/fleet/statistics.go (L21)).
2023-11-20 15:34:19 -06:00
Eric
9984bc6894
Website: Fix object mutation in receive-usage-analytics webhook. (#15185)
Closes: #15182

Changes:
- Updated the receive-usage-analytics webhook to create new database
records with a cloned `inputs` object. This prevents the JSON attributes
from being mutated into strings.
2023-11-20 12:04:03 -06:00
Eric
1d022e76b6
Website: Fix storedError metric reporting in receive-usage-analytics.js (#11404)
Changes:
- updated `receive-usage-analytics.js` to only try to send metrics for
`storedErrors` if the error objects are in [the format we
expect.](https://fleetdm.com/docs/using-fleet/usage-statistics#what-is-included-in-usage-statistics-in-fleet)
2023-04-27 17:40:10 -05:00
Eric
fe07c39f22
Website: Send custom metrics from anonymous usage statistics to Datadog (#11362)
. 
Closes: #10848 
Changes:
- Updated the `receive-usage-analytics` webhook to send custom metrics
to our Datadog account, where we can create graphs and dashboards to
track Fleet feature adoption, Fleet/osquery/orbit versions in use,
reported host counts, and stored errors.
- Added a new config variable: `sails.config.custom.datadogApiKey`
2023-04-27 16:45:35 -05:00
Eric
f5b60b9667
update hostsEnrolledByOrbitVersion and hostsEnrolledByOsqueryVersion types (#9041) 2022-12-15 18:13:14 -06:00
Eric
6db419001f
Update receive-usage-analytics.js (#8239) 2022-10-14 18:37:31 -05:00
gillespi314
5603ee8114
Add more usage stats to Sails app (#8230) 2022-10-14 13:54:23 -05:00
Martin Angers
012869f971
Fleet Premium: de-anonymize usage stats (#7013) 2022-08-03 14:44:34 -04:00
gillespi314
9a1adeb61b
Update documentation and Sails app for additional usage statistics (#6589) 2022-07-20 20:53:19 -05:00
Roberto Dip
b2d07e56b5
report error analytics (#6341)
Related to #5898, this reports an anonymized summary of errors stored in Redis into the analytics payload.

For each error stored, this includes:

- A `count` attribute with the number of occurrences of the error
- A `loc` attribute with the 3 topmost lines in the stack trace. Note that stack traces only contain package name + line number (example: github.com/fleetdm/fleet/server.go:12

This also includes a minor refactor around error types.
2022-06-28 16:31:14 -03:00
Martin Angers
8f66a50f2b
Add hosts enrolled by operating system to anonymous usage stats (#6329) 2022-06-22 16:38:11 -04:00
Martin Angers
dc9e158153
Add weekly active users count in anonymous usage stats (#6317) 2022-06-22 15:20:57 -04:00
gillespi314
6ee6dba4a4
Update anonymous usage statistics to record Fleet feature adoption (#3056)
* Collect additional anonymous usage statistics

* Update fleetdm.com and docs for usage stats

* Fix lint-go errors

* Fix failing test

* update webhook inputs

* Update receive-usage-analytics.js

* fix failing test

* Update statistics_test.go

Co-authored-by: eashaw <[email protected]>
2021-12-06 14:39:00 -06:00
Mike McNeil
62c93eae0d
clarify which Fleet environments receive data when usage analytics are enabled (#2106) 2021-09-16 22:33:25 -05:00
Mike McNeil
00f30c1e84
Fleetbot (#1572)
* Move usage analytics action for the sake of convention

* followup to ed4a500e15 to fix policy mapping

* Add stub of webhook handler for GitHub bot (at this point, a mostly-verbatim copy paste of sailsbot -- will work backwards from this to what we actually need in Fleet)

* Everyone can follow the same rules.  Except bots.  And Noah.

* same as 5c97f47eff

* replace a separate, explicit check for "sailsbot"

* Comment out stuff Fleet is not using for the foreseeable future

* use Fleet's green label color (could switch to "+" prefix as well, just would require tweaking)
2021-08-06 02:52:02 -05:00
Renamed from website/api/controllers/receive-usage-analytics.js (Browse further)