8000 WebSocket support for Netty by ValentinZakharov · Pull Request #8632 · DataDog/dd-trace-java · GitHub
[go: up one dir, main page]

Skip to content

WebSocket support for Netty #8632

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

Merged
merged 36 commits into from
May 13, 2025
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
e619f2a
Implemented WebSocket support for Netty 4.1
ValentinZakharov Mar 28, 2025
1ab91db
Let propagate unhandled events and fix tests
amarziali Mar 28, 2025
7f96ea2
Refactoring
ValentinZakharov Mar 30, 2025
b2d45a7
Refactor netty test and fix instrumentation
amarziali Apr 3, 2025
0d7330c
Improved pipeline processing - now you can insert handler in any place
ValentinZakharov Apr 3, 2025
7f1138f
Merge branch 'master' into vzakharov/websockets_netty
ValentinZakharov Apr 4, 2025
ee2c5fd
Merge branch 'master' into vzakharov/websockets_netty
ValentinZakharov Apr 7, 2025
203e468
Fixed helper
ValentinZakharov Apr 8, 2025
d753e90
Refactoring
ValentinZakharov Apr 8, 2025
af33164
WebSocket Server support for netty-4.0
ValentinZakharov Apr 9, 2025
e79c661
Missing handlers use cases for netty-4.1
ValentinZakharov Apr 10, 2025
19417b9
Fixed handlers for netty-4.0
ValentinZakharov Apr 10, 2025
6e94f0f
Tests for netty-4.0
ValentinZakharov Apr 10, 2025
c9a7c20
Refactoring
ValentinZakharov Apr 10, 2025
86715ec
WebSocket Server support for netty-3.8
ValentinZakharov Apr 11, 2025
dabfe2d
Tests for netty-3.8
ValentinZakharov Apr 15, 2025
e7f4d7f
Spotless
ValentinZakharov Apr 15, 2025
5fd4cf2
Fixed tests
ValentinZakharov Apr 16, 2025
091ee80
Add profiler env check command to AgentCLI (#8671)
jbachorik Apr 7, 2025
eb18875
Remove dependency on bash from crash/oome uploder scripts (#8652)
jbachorik Apr 7, 2025
66f7b9f
Do not apply JUnit 4 instrumentation to MUnit runners (#8675)
nikita-tkachenko-datadog Apr 7, 2025
d851aa9
Shutdown CI Visibility test event handlers before tracer (#8677)
nikita-tkachenko-datadog Apr 7, 2025
c7ec7ce
Prevent double reporting of Scalatest events when using SBT with test…
nikita-tkachenko-datadog Apr 8, 2025
ba3f346
Fix In-Product when config is empty (#8679)
jpbempel Apr 9, 2025
2203ec4
Expand MUnit runners filter to catch munit.MUnitRunner in JUnit 4 ins…
daniel-mohedano Apr 9, 2025
fef00c7
Remove unused TestEventsHandler methods (#8674)
nikita-tkachenko-datadog Apr 9, 2025
15889fc
Delete print line (#8686)
sarahchen6 Apr 9, 2025
b838ed1
Exclude ProxyLeakTask exception from exception profiling (#8666)
jbachorik Apr 10, 2025
690dd95
Use jvmstat for JDKs 9+ programmatically (#8641)
MattAlp Apr 10, 2025
6510fa4
Update test.retry_reason to use full name of the feature (#8689)
daniel-mohedano Apr 10, 2025
b8b8dab
Allow dogstatsd port to be configurable with DD_DOGSTATSD_PORT (#8693)
randomanderson Apr 14, 2025
5922b70
wait the client handshake
amarziali Apr 17, 2025
78e9c9c
move netty ws client to interested modules
amarziali Apr 17, 2025
bc4b6f0
Merge remote-tracking branch 'origin/master' into vzakharov/websocket…
amarziali Apr 17, 2025
97e7d2f
Added WebSocket tracing check
ValentinZakharov Apr 28, 2025
c817fc9
Merge branch 'master' into vzakharov/websockets_netty
ValentinZakharov Apr 28, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Remove dependency on bash from crash/oome uploder scripts (#8652)
  • Loading branch information
jbachorik authored and amarziali committed Apr 17, 2025
commit eb188758c9db6b2438e847f1d4ff3ff2343a4a98
Original file line number Diff line number Diff line change
@@ -1,51 +1,64 @@
#!/usr/bin/env bash
#!/bin/sh

set +e # Disable exit on error
# Disable exit on error
set +e

# Check if PID is provided
if [ -z "$1" ]; then
echo "Error: No PID provided"
exit 1
fi
HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" # Get the directory of the script

# Get the directory of the script
HERE=$(cd "$(dirname "$0")" >/dev/null 2>&1 && pwd)
PID=$1

# Get the base name of the script
scriptName=$(basename "$0" .sh)
# Get the base name of the script (without .sh)
scriptName=$(basename "$0")
scriptName=${scriptName%.sh}

configFile="${HERE}/${scriptName}_pid${PID}.cfg"
if [ ! -f "$configFile" ]; then
echo "Error: Configuration file not found: $configFile"
exit 1
fi

# Initialize config values
config_agent=""
config_tags=""
config_java_home=""

# Read the configuration file
# The expected contents are:
# - agent: Path to the agent jar
# - tags: Comma-separated list of tags to be sent with the OOME event; key:value pairs are supported
while IFS="=" read -r key value; do
declare "config_$key"="$value"
case "$key" in
agent) config_agent=$value ;;
tags) config_tags=$value ;;
java_home) config_java_home=$value ;;
esac
done < "$configFile"

# Exiting early if configuration is missing
if [ -z "${config_agent}" ] || [ -z "${config_tags}" ] || [ -z "${config_java_home}" ]; then
if [ -z "$config_agent" ] || [ -z "$config_tags" ] || [ -z "$config_java_home" ]; then
echo "Error: Missing configuration"
exit 1
fi

# Debug: Print the loaded values (Optional)
echo "Agent Jar: ${config_agent}"
echo "Tags: ${config_tags}"
echo "JAVA_HOME: ${config_java_home}"
echo "Agent Jar: $config_agent"
echo "Tags: $config_tags"
echo "JAVA_HOME: $config_java_home"
echo "PID: $PID"

# Execute the Java command with the loaded values
"${config_java_home}/bin/java" -Ddd.dogstatsd.start-delay=0 -jar "${config_agent}" sendOomeEvent "${config_tags}"
"$config_java_home/bin/java" -Ddd.dogstatsd.start-delay=0 -jar "$config_agent" sendOomeEvent "$config_tags"
RC=$?
rm -f "${configFile}" # Remove the configuration file

if [ $RC -eq 0 ]; then
# Remove the configuration file
rm -f "$configFile"

if [ "$RC" -eq 0 ]; then
echo "OOME Event generated successfully"
else
echo "Error: Failed to generate OOME event"
exit $RC
exit "$RC"
fi
8000
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#!/usr/bin/env bash
#!/bin/sh

set +e # Disable exit on error
# Disable exit on error
set +e

# Check if PID is provided
if [ -z "$1" ]; then
Expand All @@ -16,45 +17,56 @@ if [ -z "$1" ]; then
exit 0
fi

HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" # Get the directory of the script
# Get the directory of the script
HERE=$(cd "$(dirname "$0")" >/dev/null 2>&1 && pwd)
PID=$1

# Get the base name of the script
scriptName=$(basename "$0" .sh)
# Get the base name of the script (without .sh)
scriptName=$(basename "$0")
scriptName=${scriptName%.sh}

configFile="${HERE}/${scriptName}_pid${PID}.cfg"
if [ ! -f "$configFile" ]; then
echo "Error: Configuration file not found: $configFile"
exit 1
echo "Error: Configuration file not found: $configFile"
exit 1
fi

# Initialize config values
config_agent=""
config_hs_err=""
config_java_home=""

# Read the configuration file
# The expected contents are:
# - agent: Path to the agent jar
# - hs_err: Path to the hs_err log file
while IFS="=" read -r key value; do
declare "config_$key"="$value"
case "$key" in
agent) config_agent=$value ;;
hs_err) config_hs_err=$value ;;
java_home) config_java_home=$value ;;
esac
done < "$configFile"

# Exiting early if configuration is missing
if [ -z "${config_agent}" ] || [ -z "${config_hs_err}" ] || [ -z "${config_java_home}" ]; then
echo "Error: Missing configuration"
exit 1
if [ -z "$config_agent" ] || [ -z "$config_hs_err" ] || [ -z "$config_java_home" ]; then
echo "Error: Missing configuration"
exit 1
fi

# Debug: Print the loaded values (Optional)
echo "Agent Jar: ${config_agent}"
echo "Error Log: ${config_hs_err}"
echo "JAVA_HOME: ${config_java_home}"
echo "Agent Jar: $config_agent"
echo "Error Log: $config_hs_err"
echo "JAVA_HOME: $config_java_home"
echo "PID: $PID"

# Execute the Java command with the loaded values
"${config_java_home}/bin/java" -jar "${config_agent}" uploadCrash "${config_hs_err}"
"$config_java_home/bin/java" -jar "$config_agent" uploadCrash "$config_hs_err"
RC=$?
rm -f "${configFile}" # Remove the configuration file

if [ $RC -eq 0 ]; then
echo "Error file ${config_hs_err} was uploaded successfully"
# Remove the configuration file
rm -f "$configFile"

if [ "$RC" -eq 0 ]; then
echo "Error file $config_hs_err was uploaded successfully"
else
echo "Error: Failed to upload error file ${config_hs_err}"
exit $RC
echo "Error: Failed to upload error file $config_hs_err"
exit "$RC"
fi
0