diff --git a/_static/versions.json b/_static/versions.json index c6068d19..fbdd479b 100644 --- a/_static/versions.json +++ b/_static/versions.json @@ -1,10 +1,14 @@ [ { - "name": "v5.4.8 (latest)", - "version": "v5.4.8", + "name": "v5.4.9 (latest)", + "version": "v5.4.9", "url": "https://docs.gravwell.io/", "preferred": true }, + { + "version": "v5.4.8", + "url": "https://docs.gravwell.io/v5.4.8/" + }, { "version": "v5.4.7", "url": "https://docs.gravwell.io/v5.4.7/" diff --git a/changelog/5.4.9.md b/changelog/5.4.9.md new file mode 100644 index 00000000..99c0a80e --- /dev/null +++ b/changelog/5.4.9.md @@ -0,0 +1,14 @@ +# Changelog for version 5.4.9 + +## Released 24 May 2024 + +## Gravwell + +### Bug Fixes + +* Fixed an issue where scratch directories would not be cleaned up during initialization. +* Fixed an issue where the webserver would crash if a module with optimized collapsing was invoked manually. +* Fixed an issue where a large number of scheduled searches would cause the browser to hang. +* Fixed an issue with TLS certificate validation that occurred when a port number was appended in the dial string. +* Fixed an issue with cached assets that could cause failure to load resources such as font icons immediately after an upgrade. +* Fixed an issue with a text input that failed to display the full text during kit deployment. \ No newline at end of file diff --git a/changelog/list.md b/changelog/list.md index e43d20b3..d226763c 100644 --- a/changelog/list.md +++ b/changelog/list.md @@ -7,7 +7,7 @@ maxdepth: 1 caption: Current Release --- -5.4.8 <5.4.8> +5.4.9 <5.4.9> ``` ## Previous Versions @@ -18,6 +18,7 @@ maxdepth: 1 caption: Previous Releases --- +5.4.8 <5.4.8> 5.4.7 <5.4.7> 5.4.6 <5.4.6> 5.4.5 <5.4.5> diff --git a/conf.py b/conf.py index 26470dbe..8be712b0 100644 --- a/conf.py +++ b/conf.py @@ -21,7 +21,7 @@ project = "Gravwell" copyright = f"Gravwell, Inc. {date.today().year}" author = "Gravwell, Inc." -release = "v5.4.8" +release = "v5.4.9" # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/configuration/sso-hash-algo.png b/configuration/sso-hash-algo.png new file mode 100644 index 00000000..28f7d9ee Binary files /dev/null and b/configuration/sso-hash-algo.png differ diff --git a/configuration/sso.md b/configuration/sso.md index 1a354065..6be7026a 100644 --- a/configuration/sso.md +++ b/configuration/sso.md @@ -91,6 +91,14 @@ If, however, Gravwell is using self-signed certificates, you must manually downl On the next page of the wizard, you will be prompted to set a display name. "Gravwell" or something similar would be fine. In the further pages of the wizard, you should be able to leave the defaults. +#### Change Hash Algorithm + +At this time, Gravwell's SAML implementation requires SHA-1 signatures, but Windows AD FS defaults to SHA-256. Open the properties dialog for the newly-created relying party, select the Advanced tab, and change the hash algorithm to SHA-1: + +![](sso-hash-algo.png) + +If you forget to make this change, upon attempting to log in you will see a "Forbidden" page. The Gravwell webserver stderr file at `/dev/shm/gravwell_webserver.service` will contain an error message from the SAML library with the status `urn:oasis:names:tc:SAML:2.0:status:Responder` indicating that the responder (AD FS) experienced a problem. If you see these symptoms, double-check the hash algorithm in AD FS. + ### Edit Claims Issuance Policy for Relying Party You must now add a few claims issuance transform rules to the relying policy. Select "Edit Claim Issuance Policy" for the newly-created relying party: diff --git a/ingesters/win_file_follow.md b/ingesters/win_file_follow.md index a1044573..a0883017 100644 --- a/ingesters/win_file_follow.md +++ b/ingesters/win_file_follow.md @@ -14,7 +14,7 @@ Download the Gravwell Windows File Follower installer: | Ingester Name | Installer | More Info | | :------------ | :----------- | :-------- | -| Windows File Follower | Download    (SHA256) | [Documentation](/ingesters/win_file_follow) | +| Windows File Follower | Download    (SHA256) | [Documentation](/ingesters/win_file_follow) | The Gravwell Windows file follower is installed using a signed MSI package. Gravwell signs both the Windows executable and MSI installer with our private key pairs, but depending on download volumes, you may see a warning about the MSI being untrusted. This is due to the way Microsoft "weighs" files. Basically, as they see more people download and install a given package, it becomes more trustworthy. Don't worry though, we have a well audited build pipeline and we sign every package. diff --git a/ingesters/winevent.md b/ingesters/winevent.md index 4d6b828e..0634cee7 100644 --- a/ingesters/winevent.md +++ b/ingesters/winevent.md @@ -49,7 +49,7 @@ Download the Gravwell Windows Events installer: | Ingester Name | Installer | More Info | | :------------ | :----------- | :-------- | -| Windows Events | Download    (SHA256) | [Documentation](/ingesters/winevent) | +| Windows Events | Download    (SHA256) | [Documentation](/ingesters/winevent) | Run the .msi installation wizard to install the Gravwell events service. On first installation the installation wizard will prompt to configure the indexer endpoint and ingest secret. Subsequent installations and/or upgrades will identify a resident configuration file and will not prompt. diff --git a/quickstart/downloads.md b/quickstart/downloads.md index c42c9ea5..46223909 100644 --- a/quickstart/downloads.md +++ b/quickstart/downloads.md @@ -4,14 +4,14 @@ | Ingester Name | Installer | More Info | | :------------ | :----------- | :-------- | -| Windows Events | Download    (SHA256) | [Documentation](/ingesters/winevent) | -| Windows File Follower | Download    (SHA256) | [Documentation](/ingesters/win_file_follow) | +| Windows Events | Download    (SHA256) | [Documentation](/ingesters/winevent) | +| Windows File Follower | Download    (SHA256) | [Documentation](/ingesters/win_file_follow) | ## macOS Ingesters | Ingester Name | Installer | More Info | | :------------ | :----------- | :-------- | -| File Follower | Download    (SHA256) | [Documentation](/ingesters/file_follow) | +| File Follower | Download    (SHA256) | [Documentation](/ingesters/file_follow) | ## Other Installers @@ -23,7 +23,7 @@ The Debian and RHEL repositories are more easily maintained than these standalon The Gravwell core installer contains the indexer and webserver frontend. You'll need a license; either get a Community Edition free license, or contact info@gravwell.io for commercial options. -Download Gravwell Core Installer Download    (SHA256) +Download Gravwell Core Installer Download    (SHA256) ### Ingesters @@ -32,24 +32,24 @@ The core suite of ingesters are available for download as installable packages. #### Current Ingester Releases | Ingester Name | Installer | More Info | | :------------ | :----------- | :-------- | -| Amazon Kinesis | Download    (SHA256) | [Documentation](/ingesters/kinesis)| -| Amazon S3 | Download    (SHA256) | [Documentation](/ingesters/s3)| -| Amazon SQS | Download    (SHA256) | [Documentation](/ingesters/sqs)| -| Apache Kafka | Download    (SHA256) | [Documentation](/ingesters/kafka)| -| Apache Kafka Federator | Download    (SHA256) | [Documentation](/ingesters/federators/kafkafederator)| -| Collectd Collector | Download    (SHA256) | [Documentation](/ingesters/collectd) | -| File Follower | Download    (SHA256) | [Documentation](/ingesters/file_follow) | -| Google PubSub | Download    (SHA256) | [Documentation](/ingesters/pubsub)| -| HTTP Ingester | Download    (SHA256) | [Documentation](/ingesters/http) | -| Ingest Federator | Download    (SHA256) | [Documentation](/ingesters/federators/federator) | -| IPMI Ingester | Download    (SHA256) | [Documentation](/ingesters/ipmi)| -| Microsoft Azure EventHub | Download    (SHA256) | [Documentation](/ingesters/eventhubs)| -| Microsoft Graph API | Download    (SHA256) | [Documentation](/ingesters/msg)| -| Netflow Capture | Download    (SHA256) | [Documentation](/ingesters/netflow) | -| Network Capture | Download    (SHA256) | [Documentation](/ingesters/pcap) | -| Office 365 Logs | Download    (SHA256) | [Documentation](/ingesters/o365)| -| Simple Relay | Download    (SHA256) | [Documentation](/ingesters/simple_relay)| -| SNMP Traps | Download    (SHA256) | [Documentation](/ingesters/snmp)| +| Amazon Kinesis | Download    (SHA256) | [Documentation](/ingesters/kinesis)| +| Amazon S3 | Download    (SHA256) | [Documentation](/ingesters/s3)| +| Amazon SQS | Download    (SHA256) | [Documentation](/ingesters/sqs)| +| Apache Kafka | Download    (SHA256) | [Documentation](/ingesters/kafka)| +| Apache Kafka Federator | Download    (SHA256) | [Documentation](/ingesters/federators/kafkafederator)| +| Collectd Collector | Download    (SHA256) | [Documentation](/ingesters/collectd) | +| File Follower | Download    (SHA256) | [Documentation](/ingesters/file_follow) | +| Google PubSub | Download    (SHA256) | [Documentation](/ingesters/pubsub)| +| HTTP Ingester | Download    (SHA256) | [Documentation](/ingesters/http) | +| Ingest Federator | Download    (SHA256) | [Documentation](/ingesters/federators/federator) | +| IPMI Ingester | Download    (SHA256) | [Documentation](/ingesters/ipmi)| +| Microsoft Azure EventHub | Download    (SHA256) | [Documentation](/ingesters/eventhubs)| +| Microsoft Graph API | Download    (SHA256) | [Documentation](/ingesters/msg)| +| Netflow Capture | Download    (SHA256) | [Documentation](/ingesters/netflow) | +| Network Capture | Download    (SHA256) | [Documentation](/ingesters/pcap) | +| Office 365 Logs | Download    (SHA256) | [Documentation](/ingesters/o365)| +| Simple Relay | Download    (SHA256) | [Documentation](/ingesters/simple_relay)| +| SNMP Traps | Download    (SHA256) | [Documentation](/ingesters/snmp)| ### Other downloads @@ -57,8 +57,8 @@ Some Gravwell components are distributed as optional additional installers, such | Component Name | Installer | More Info | | :------------- | :----------- | :-------- | -| Datastore | Download    (SHA256) | [Documentation](/distributed/frontend) | -| Cloud Archive Server | Download    (SHA256) | [Documentation](/configuration/archive) | -| Offline Replicator | Download    (SHA256) | [Documentation](/configuration/replication) | -| Load Balancer | Download    (SHA256) | [Documentation](/distributed/loadbalancer) | -| Gravwell Tools | Download    (SHA256) | [Documentation](/tools/tools)| +| Datastore | Download    (SHA256) | [Documentation](/distributed/frontend) | +| Cloud Archive Server | Download    (SHA256) | [Documentation](/configuration/archive) | +| Offline Replicator | Download    (SHA256) | [Documentation](/configuration/replication) | +| Load Balancer | Download    (SHA256) | [Documentation](/distributed/loadbalancer) | +| Gravwell Tools | Download    (SHA256) | [Documentation](/tools/tools)| diff --git a/quickstart/quickstart.md b/quickstart/quickstart.md index e40a257c..d5084862 100644 --- a/quickstart/quickstart.md +++ b/quickstart/quickstart.md @@ -19,7 +19,7 @@ This guide is suitable for Community Edition users as well as users with a paid You may find the [installation checklist](checklist) and the [glossary](/glossary/glossary) useful companions to this document. -If you are interested in a complete training package, please see the [complete training PDF](https://github.com/gravwell/training/releases/download/v5.4.8/gravwell_training_v5.4.8.pdf). The Gravwell training PDF is the complete training manual which is paired with labs and exercises. The exercises are built from the open source [Gravwell Training](https://github.com/gravwell/training) repository. +If you are interested in a complete training package, please see the [complete training PDF](https://github.com/gravwell/training/releases/download/v5.4.9/gravwell_training_v5.4.9.pdf). The Gravwell training PDF is the complete training manual which is paired with labs and exercises. The exercises are built from the open source [Gravwell Training](https://github.com/gravwell/training) repository. ```{note} Community Edition users will need to obtain their own license from [https://www.gravwell.io/download](https://www.gravwell.io/download) before beginning installation. Paid users should already have received a license file via email. diff --git a/search/eval/eval.md b/search/eval/eval.md index d82a6c49..c87e6268 100644 --- a/search/eval/eval.md +++ b/search/eval/eval.md @@ -436,6 +436,35 @@ Returns the input with all leading and trailing whitespace removed. Returns the input with the trailing suffix removed. +#### pretty_size + + function pretty_size(input string) string + +Converts a number to an abreviated pretty printed size, 1234567 becomes "1.18 MB". + +#### pretty_count + + function pretty_count(input string) string + +Converts a number to an abreviated pretty printed magnitude, 1234567 becomes "1.24 M". + +#### pretty_count + + function pretty_count(input string) string + +Converts a number to an abreviated pretty printed magnitude, 1234567 becomes "1.24 M". + +#### pretty_rate + + function pretty_rate(number, duration) string + +Converts a number to an abreviated pretty printed rate in bytes, kilobytes, or megabytes per second given a magnitude and duration; "pretty_rate(1234567, "2s")" becomes "588.87 KB/s". + +#### pretty_line_rate + + function pretty_line_rate(number, duration) string + +Converts a number to an abreviated pretty printed line rate in bits, kilobits, and megabits per second given a magnitude and duration; "pretty_line_rate(1234567, "2s")" becomes "4.71 Mb/s". ### Hash @@ -624,7 +653,7 @@ Returns a JSON object of the given key/value pair. The value's type is evaluated #### json_pretty - function json_pretty(input string) string { + function json_pretty(input string) string Pretty prints the given JSON input. @@ -634,7 +663,67 @@ Pretty prints the given JSON input. Sets a key/value pair in the given object. The value's type is evaluated at runtime and will map to the corresponding JSON type (object, array, bool, number, string), or a string if the type doesn't map to a JSON type. +### Math + +```{note} +Some math functions retain their legacy function names for backwards compatability. +``` + +#### ceil + + function ceil(x float) float + +Returns the least integer value greater than or equal to x. + +#### floor + + function floor(x float) float + +Returns the greatest integer value less than or equal to x. + +#### math_abs + + function math_abs(x float) float + +Returns the absolut value of x. + +#### math_ceil + + function math_ceil(x float) float + +Same as ceil(). Returns the least integer value greater than or equal to x. + +#### math_floor + + function math_floor(x float) float +Same as floor(). Returns the greatest integer value less than or equal to x. + +#### math_log + + function math_log(x float) float + +Returns the natural logarithm of x. + +#### math_log10 + + function math_log10(x float) float + +Returns the decimal logarithm of x. + +#### math_log2 + + function math_log2(x float) float + +Returns the binary logarithm of x. + +#### math_max + + function math_max(x float, y float) float + +Returns the larger of x or y. + +#### math_min ### Math ```{note} @@ -806,4 +895,4 @@ Cast = "int" | "float" | "string" | "mac" | "ip" | "time" | ## Legacy Eval -There is a legacy version of eval that you may still see in older queries. For more details, see the [Legacy eval page](legacy-eval) for reference. \ No newline at end of file +There is a legacy version of eval that you may still see in older queries. For more details, see the [Legacy eval page](legacy-eval) for reference.