Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from fluent:master #11

Merged
merged 42 commits into from
Jul 4, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
88afa90
in_opentelemetry: fix error string in http response code 400. (#8979)
lecaros Jun 20, 2024
f6c650e
in_prometheus_remote_write: fix string in http response code 400. (#8…
lecaros Jun 21, 2024
2bb1508
in_winevtlog: Retrieve actual user account's domain and name (#8992)
cosmo0920 Jun 21, 2024
742ec1c
in_splunk: prot: Fix string in http response code 400. (#8980)
lecaros Jun 21, 2024
ccd24c7
in_winevtlog: Permit to handle an abcense of publisher metadata
cosmo0920 Jun 18, 2024
f5737c0
in_winevtlog: Prepare buffer before notified the actual size
cosmo0920 Jun 18, 2024
7060979
processor_content_modifier: add support for OTel Logs Resource and Sc…
edsiper Jun 20, 2024
ca285c7
in_docker: fix memory leak caused by conversion error
Garfield96 Jun 21, 2024
137aada
out_opentelemetry: release log resource if attributes are empty
edsiper Jun 24, 2024
c8b0eee
mp: allow empty maps when encoding from flb_mp_chunk_cobj
edsiper Jun 24, 2024
39f7d1b
pack: allow printing signed values for timestamp
edsiper Jun 24, 2024
4df367d
processor_opentelemetry_envelope: new processor to package non OTel s…
edsiper Jun 24, 2024
5b81ad7
fix: add null content-type header check to traces and metrics endpoints
portswigger-tim Jun 20, 2024
9ed8cf8
fix: handle unsupported content-types
portswigger-tim Jun 20, 2024
a9a440c
in_kubernetes_events: stream k8s events via watch
ryanohnemus Dec 20, 2023
e48dddb
in_kubernetes_events: add tests and move connection stream up to context
ryanohnemus Apr 30, 2024
b20df67
in_kubernetes_events: check http_get_response_data return val
ryanohnemus May 1, 2024
1009138
out_loki: allow sending unquoted strings
iandrewt May 10, 2024
87194d7
parser: add support for time_system_timezone
braydonk Jun 24, 2024
e108034
multiline: adjust to updated parser API for system timezone
braydonk Jun 24, 2024
9bcf925
in_kubernetes_events: adjust to updated parser API for system timezone
braydonk Jun 24, 2024
e81fc39
tests: internal: fuzzers: adjust to updated parser API for system tim…
braydonk Jun 24, 2024
b857ac7
tests: internal: parser: adjusto to updated parser API for system tim…
braydonk Jun 24, 2024
30a04be
tests: runtime: filter_parser: adjust to updated parser API for syste…
braydonk Jun 24, 2024
d2e01ad
processor_content_modifier: logs: do not fail if keys are not found
edsiper Jun 24, 2024
1c58785
out_datadog: Add support for setting a static hostname
jszwedko Jun 20, 2024
1c3740d
in_opentelemetry: improved OTLP error handling (#8962)
nuclearpidgeon Jun 25, 2024
42b7222
tls: openssl: Add a member for storing config to verify hostname
cosmo0920 Jun 14, 2024
3bea580
filter_kubernetes: Provide for restoring behavior option for kublet TLS
cosmo0920 Jun 14, 2024
93b0cb5
input: tls: Add tls.verify_hostname handlers
cosmo0920 Jun 17, 2024
d4735ac
output: tls: Add tls.verify_hostname handlers
cosmo0920 Jun 17, 2024
456c305
utils: floating-point number support in size-to-bytes conversion (#8767)
Meetp369 Jun 25, 2024
fe988b1
conf: parser: add new parser for Linux Kernel netfilter firewall log …
protohuf Jun 25, 2024
51ac697
workflows: update for 3.1 release (#9008)
edsiper Jun 25, 2024
9ec5374
lib: c-ares: upgrade to v1.31.0
edsiper Jun 25, 2024
060418c
metrics: allocate metrics titles dynamically (#8969)
cosmo0920 Jun 26, 2024
13f96f9
in_winetvlog: Handle buffer allocation error and not mapped error (#9…
cosmo0920 Jun 27, 2024
69bf966
out_splunk: remove raw endpoint (#9007)
pmeier Jul 2, 2024
b6c9c21
http_server: always set the content-length header on HTTP/1.x (fix #9…
edsiper Jul 3, 2024
3914200
downstream: expose net.keepalive config flag
edsiper Jul 3, 2024
a3c66ed
http_server: extend checks for keep-alive configs and protocol defaults
edsiper Jul 3, 2024
66970cb
tls: openssl: fix handling of noisy non TLS errors
edsiper Jul 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
31 changes: 22 additions & 9 deletions .github/workflows/staging-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -502,8 +502,8 @@ jobs:
TAG: ${{ steps.get-tag.outputs.tag }}

staging-release-images-latest-tags:
# Only update latest tags for 3.0 releases
if: startsWith(github.event.inputs.version, '3.0')
# Only update latest tags for 3.1 releases
if: startsWith(github.event.inputs.version, '3.1')
name: Release latest Linux container images
runs-on: ubuntu-latest
needs:
Expand Down Expand Up @@ -791,21 +791,21 @@ jobs:
target_commitish: '2.1'
make_latest: false

- name: Release 2.2 - not latest
- name: Release 3.0 - not latest
uses: softprops/action-gh-release@v2
if: startsWith(inputs.version, '2.2')
if: startsWith(inputs.version, '3.0')
with:
body: "https://fluentbit.io/announcements/v${{ inputs.version }}/"
draft: false
generate_release_notes: true
name: "Fluent Bit ${{ inputs.version }}"
tag_name: v${{ inputs.version }}
target_commitish: '2.2'
target_commitish: '3.0'
make_latest: false

- name: Release 3.0 and latest
- name: Release 3.1 and latest
uses: softprops/action-gh-release@v2
if: startsWith(inputs.version, '3.0')
if: startsWith(inputs.version, '3.1')
with:
body: "https://fluentbit.io/announcements/v${{ inputs.version }}/"
draft: false
Expand Down Expand Up @@ -898,13 +898,20 @@ jobs:
ref: 2.2
token: ${{ secrets.GH_PA_TOKEN }}

- name: Release 3.0 and latest
- name: Release 3.0 - not latest
if: startsWith(inputs.version, '3.0')
uses: actions/checkout@v4
with:
repository: fluent/fluent-bit-docs
token: ${{ secrets.GH_PA_TOKEN }}

- name: Release 3.1 and latest
if: startsWith(inputs.version, '3.1')
uses: actions/checkout@v4
with:
repository: fluent/fluent-bit-docs
token: ${{ secrets.GH_PA_TOKEN }}

- name: Ensure we have the script we need
run: |
if [[ ! -f update-release-version-docs.sh ]] ; then
Expand Down Expand Up @@ -977,9 +984,15 @@ jobs:
with:
ref: 2.2

- name: Release 3.0 and latest
- name: Release 3.0 not latest
if: startsWith(inputs.version, '3.0')
uses: actions/checkout@v4
with:
ref: 3.0

- name: Release 3.1 latest
if: startsWith(inputs.version, '3.1')
uses: actions/checkout@v4

# Get the new version to use
- name: 'Get next minor version'
Expand Down
2 changes: 1 addition & 1 deletion cmake/libraries.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ set(FLB_PATH_LIB_ONIGMO "lib/onigmo")
set(FLB_PATH_LIB_MPACK "lib/mpack-amalgamation-1.1.1")
set(FLB_PATH_LIB_MINIZ "lib/miniz")
set(FLB_PATH_LIB_TUTF8E "lib/tutf8e")
set(FLB_PATH_LIB_CARES "lib/c-ares-1.30.0")
set(FLB_PATH_LIB_CARES "lib/c-ares-1.31.0")
set(FLB_PATH_LIB_SNAPPY "lib/snappy-fef67ac")
set(FLB_PATH_LIB_RDKAFKA "lib/librdkafka-2.3.0")
set(FLB_PATH_LIB_RING_BUFFER "lib/lwrb")
Expand Down
2 changes: 1 addition & 1 deletion cmake/plugins_options.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ DEFINE_OPTION(FLB_PROCESSOR_CONTENT_MODIFIER "Enable content modifier processor
DEFINE_OPTION(FLB_PROCESSOR_LABELS "Enable metrics label manipulation processor" ON)
DEFINE_OPTION(FLB_PROCESSOR_METRICS_SELECTOR "Enable metrics selector processor" ON)
DEFINE_OPTION(FLB_PROCESSOR_SQL "Enable SQL processor" ON)

DEFINE_OPTION(FLB_PROCESSOR_OPENTELEMETRY_ENVELOPE "Enable OpenTelemetry envelope processor" ON)

# Filters
# =======
Expand Down
8 changes: 8 additions & 0 deletions conf/parsers.conf
Original file line number Diff line number Diff line change
Expand Up @@ -128,3 +128,11 @@
Name kube-custom
Format regex
Regex (?<tag>[^.]+)?\.?(?<pod_name>[a-z0-9](?:[-a-z0-9]*[a-z0-9])?(?:\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*)_(?<namespace_name>[^_]+)_(?<container_name>.+)-(?<docker_id>[a-z0-9]{64})\.log$

[PARSER]
# Examples: TCP: https://rubular.com/r/Q8YY6fHqlqwGI0 UDP: https://rubular.com/r/B0ID69H9FvN0tp
Name kmsg-netfilter-log
Format regex
Regex ^\<(?<pri>[0-9]{1,5})\>1 (?<time>[^ ]+) (?<host>[^ ]+) kernel - - - \[[0-9\.]*\] (?<logprefix>[^ ]*)\s?IN=(?<in>[^ ]*) OUT=(?<out>[^ ]*) MAC=(?<macsrc>[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}):(?<macdst>[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}:[0-9a-f]{2}):(?<ethtype>[0-9a-f]{2}:[0-9a-f]{2}) SRC=(?<saddr>[^ ]*) DST=(?<daddr>[^ ]*) LEN=(?<len>[^ ]*) TOS=(?<tos>[^ ]*) PREC=(?<prec>[^ ]*) TTL=(?<ttl>[^ ]*) ID=(?<id>[^ ]*) (D*F*)\s*PROTO=(?<proto>[^ ]*)\s?((SPT=)?(?<sport>[0-9]*))\s?((DPT=)?(?<dport>[0-9]*))\s?((LEN=)?(?<protolen>[0-9]*))\s?((WINDOW=)?(?<window>[0-9]*))\s?((RES=)?(?<res>0?x?[0-9]*))\s?(?<flag>[^ ]*)\s?((URGP=)?(?<urgp>[0-9]*))
Time_Key time
Time_Format %Y-%m-%dT%H:%M:%S.%L%z
3 changes: 3 additions & 0 deletions include/fluent-bit/flb_downstream.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@ struct flb_downstream {

struct mk_list busy_queue;
struct mk_list destroy_queue;

/* this is a config map reference coming from the plugin net_setup field */
struct flb_net_setup *net_setup;
};

static inline int flb_downstream_is_shutting_down(struct flb_downstream *downstream)
Expand Down
1 change: 1 addition & 0 deletions include/fluent-bit/flb_input.h
Original file line number Diff line number Diff line change
Expand Up @@ -359,6 +359,7 @@ struct flb_input_instance {
/* TLS settings */
int use_tls; /* bool, try to use TLS for I/O */
int tls_verify; /* Verify certs (default: true) */
int tls_verify_hostname; /* Verify hostname (default: false) */
int tls_debug; /* mbedtls debug level */
char *tls_vhost; /* Virtual hostname for SNI */
char *tls_ca_path; /* Path to certificates */
Expand Down
7 changes: 5 additions & 2 deletions include/fluent-bit/flb_metrics.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,17 +56,20 @@
#define FLB_METRIC_OUT_DROPPED_RECORDS 15 /* dropped_records_total */
#define FLB_METRIC_OUT_RETRIED_RECORDS 16 /* retried_records_total */

/* The limitation of title name length */
#define FLB_METRIC_LENGTH_LIMIT 1024

struct flb_metric {
int id;
int title_len;
char title[64];
char *title;
size_t val;
struct mk_list _head;
};

struct flb_metrics {
int title_len; /* Title string length */
char title[64]; /* Title or id for this metrics context */
char *title; /* Title or id for this metrics context */
int count; /* Total count of metrics registered */
struct mk_list list; /* Head of metrics list */
};
Expand Down
1 change: 1 addition & 0 deletions include/fluent-bit/flb_output.h
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,7 @@ struct flb_output_instance {

#ifdef FLB_HAVE_TLS
int tls_verify; /* Verify certs (default: true) */
int tls_verify_hostname; /* Verify hostname (default: false) */
int tls_debug; /* mbedtls debug level */
char *tls_vhost; /* Virtual hostname for SNI */
char *tls_ca_path; /* Path to certificates */
Expand Down
11 changes: 9 additions & 2 deletions include/fluent-bit/flb_parser.h
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ struct flb_parser {
char *time_fmt_full; /* original given time format */
char *time_key; /* field name that contains the time */
int time_offset; /* fixed UTC offset */
int time_system_timezone; /* use the system timezone as a fallback */
int time_keep; /* keep time field */
int time_strict; /* parse time field strictly */
int logfmt_no_bare_keys; /* in logfmt parsers, require all keys to have values */
Expand All @@ -74,13 +75,18 @@ enum {
FLB_PARSER_TYPE_HEX,
};

static inline time_t flb_parser_tm2time(const struct flb_tm *src)
static inline time_t flb_parser_tm2time(const struct flb_tm *src,
int use_system_timezone)
{
struct tm tmp;
time_t res;

tmp = src->tm;
res = timegm(&tmp) - flb_tm_gmtoff(src);
if (use_system_timezone) {
res = mktime(&tmp);
} else {
res = timegm(&tmp) - flb_tm_gmtoff(src);
}
return res;
}

Expand All @@ -92,6 +98,7 @@ struct flb_parser *flb_parser_create(const char *name, const char *format,
const char *time_offset,
int time_keep,
int time_strict,
int time_system_timezone,
int logfmt_no_bare_keys,
struct flb_parser_types *types,
int types_len,
Expand Down
3 changes: 3 additions & 0 deletions include/fluent-bit/tls/flb_tls.h
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ struct flb_tls {
int debug; /* Debug level */
char *vhost; /* Virtual hostname for SNI */
int mode; /* Client or Server */
int verify_hostname; /* Verify hostname */

/* Bakend library for TLS */
void *ctx; /* TLS context created */
Expand All @@ -112,6 +113,8 @@ int flb_tls_destroy(struct flb_tls *tls);

int flb_tls_set_alpn(struct flb_tls *tls, const char *alpn);

int flb_tls_set_verify_hostname(struct flb_tls *tls, int verify_hostname);

int flb_tls_load_system_certificates(struct flb_tls *tls);

struct mk_list *flb_tls_get_config_map(struct flb_config *config);
Expand Down
7 changes: 0 additions & 7 deletions lib/c-ares-1.30.0/CHANGES

This file was deleted.

21 changes: 0 additions & 21 deletions lib/c-ares-1.30.0/NEWS

This file was deleted.

15 changes: 0 additions & 15 deletions lib/c-ares-1.30.0/README.cares

This file was deleted.

33 changes: 0 additions & 33 deletions lib/c-ares-1.30.0/RELEASE-NOTES.md

This file was deleted.

4 changes: 0 additions & 4 deletions lib/c-ares-1.30.0/TODO

This file was deleted.

29 changes: 0 additions & 29 deletions lib/c-ares-1.30.0/get_ver.awk

This file was deleted.

71 changes: 0 additions & 71 deletions lib/c-ares-1.30.0/maketgz

This file was deleted.

File renamed without changes.
Loading
Loading