1.2.17

v1.2.17 - May 15, 2019

This is a minor bugs fix release and allowing for the use of hosted slack accounts and public slack channels.

Changes in v1.2.17

  • luminosity - do not analyse short time series. Only return a time series sample if the sample has sufficient data points otherwise get_anomalies() will throw and error (3008)

  • Ionosphere - could not determine values from metrics_db_object. Handle if the metric_ionosphere_enabled value cannot be determined (2984)

  • Add metrics id to relevant Ionosphere pages (2990)

  • Determine slack group/channel using free or hosted slack account response (2986)

  • Determine slack_thread_ts using private and public channel (2986)

  • If the Skyline MySQL database is on a remote host 2 seconds in panorama.py is sometimes not sufficient time to process, increased to 10 (2646)

Update notes

  • These update instruction apply to upgrading from v1.2.16 to v1.2.17 only. However as with all Skyline updates it is possible to go through the update notes for each version and make your own update notes/process to take you from version x to version y.

  • There are no changes to the DB in v1.2.17

  • There are no changes to settings.py in v1.2.17

How to update from v1.2.16

  • Download the new release tag or clone/update to get it to a temp location, ready to be deployed.

NEW_SKYLINE_VERSION="v1.2.17"    # Your new Skyline version
OLD_SKYLINE_VERSION="v1.2.16"    # Your old Skyline version

CURRENT_SKYLINE_PATH="/opt/skyline/github/skyline"                 # Your Skyline path
NEW_SKYLINE_PATH="${CURRENT_SKYLINE_PATH}.${NEW_SKYLINE_VERSION}"  # Your new Skyline path

mkdir -p "${CURRENT_SKYLINE_PATH}.${NEW_SKYLINE_VERSION}"
cd "${CURRENT_SKYLINE_PATH}.${NEW_SKYLINE_VERSION}"
git clone https://github.com/earthgecko/skyline .
git checkout "$NEW_SKYLINE_VERSION"

cp "$NEW_SKYLINE_PATH/skyline/settings.py" "$NEW_SKYLINE_PATH/skyline/settings.py.${NEW_SKYLINE_VERSION}.bak"
cat "${CURRENT_SKYLINE_PATH}/skyline/settings.py" > "$NEW_SKYLINE_PATH/skyline/settings.py"

# Stop all other Skyline services
SKYLINE_SERVICES="horizon
analyzer
mirage
crucible
boundary
ionosphere
luminosity
panorama
webapp"
for i in $SKYLINE_SERVICES
do
  /etc/init.d/$i stop
done
  • Move your current Skyline directory to a backup directory and move the new Skyline v1.2.17 from the temp location to your working Skyline directory, (change your paths as appropriate) e.g.

mv "$CURRENT_SKYLINE_PATH" "${CURRENT_SKYLINE_PATH}.${OLD_SKYLINE_VERSION}"
mv "$NEW_SKYLINE_PATH" "$CURRENT_SKYLINE_PATH"
  • Start the all Skyline services (change as appropriate for your set up) e.g.

# Start all other Skyline services
SKYLINE_SERVICES="panorama
luminosity
horizon
analyzer
mirage
crucible
boundary
ionosphere
webapp"
for i in $SKYLINE_SERVICES
do
  /etc/init.d/$i start
done
  • Check the logs

# How are they running
tail -n 20 /var/log/skyline/*.log

# Any errors - each app
find /var/log/skyline -type f -name "*.log" | while read skyline_logfile
do
  echo "#####
# Checking for errors in $skyline_logfile"
  cat "$skyline_logfile" | grep -B2 -A10 -i "error ::\|traceback" | tail -n 60
  echo ""
  echo ""
done