|
|
|
@ -1,15 +1,16 @@
|
|
|
|
|
#!/bin/bash
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
|
|
# Path to the ECS metadata file
|
|
|
|
|
METADATA_FILE=$(cat "$ECS_CONTAINER_METADATA_FILE")
|
|
|
|
|
# Check if ECS_CONTAINER_METADATA_FILE is set
|
|
|
|
|
if [ -z "$ECS_CONTAINER_METADATA_FILE" ]; then
|
|
|
|
|
echo "ECS_CONTAINER_METADATA_FILE is not set or the server is running in local deployment environment"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ -f "$METADATA_FILE" ]; then
|
|
|
|
|
# Extract HostPrivateIPv4Address from the metadata file
|
|
|
|
|
HOST_PRIVATE_IP=$(jq -r '.HostPrivateIPv4Address' < "$METADATA_FILE")
|
|
|
|
|
HOST_PRIVATE_IP=$(cat $ECS_CONTAINER_METADATA_FILE | grep -oP '(?<=HostPrivateIPv4Address": ")[^"]+')
|
|
|
|
|
|
|
|
|
|
if [ "$HOST_PRIVATE_IP" != "null" ]; then
|
|
|
|
|
echo "Host Private IP: $HOST_PRIVATE_IP"
|
|
|
|
|
export HOST_PRIVATE_IP
|
|
|
|
|
|
|
|
|
|
# Define the input template file and output file
|
|
|
|
|
TEMPLATE_FILE="filebeat.template.yml"
|
|
|
|
@ -26,10 +27,7 @@ if [ -f "$METADATA_FILE" ]; then
|
|
|
|
|
ln -sf "/opt/logs/${HOST_PRIVATE_IP}/elk" /usr/share/filebeat/elk
|
|
|
|
|
ln -sf "/opt/filebeat-configs/${HOST_PRIVATE_IP}/filebeat.yml" /usr/share/filebeat/filebeat.yml
|
|
|
|
|
else
|
|
|
|
|
echo "HostPrivateIPv4Address not found in metadata file"
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
echo "Metadata file does not exist"
|
|
|
|
|
echo "HostPrivateIPv4Address not found"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# Run the original filebeat entrypoint
|
|
|
|
|