Naar hoofdinhoud gaan
De AppSignal-integraties voor Ruby, Elixir & Node.js bevatten native extensions en een apart lichtgewicht agentproces. Deze native extensions worden ondersteund op de meeste Linux-distributies, FreeBSD en macOS/OSX. Onze Go- en Python-integraties gebruiken alleen ons agentproces en vereisen geen aanvullende pakketten om geïnstalleerd te worden. Net als de andere integraties werken ze alleen op de ondersteunde besturingssystemen die vermeld staan in de ondersteuningstabel. Als een besturingssysteem dat u gebruikt niet wordt ondersteund, neem dan contact op.

Ondersteuningstabel

Tabel met verschillende combinaties van besturingssystemen en architecturen die we ondersteunen. Controleer de opmerkingen onder de tabel voor eventuele uitzonderingen en versievereisten.

Integraties

Onze integraties omvatten: Ruby gem, Elixir-pakket, Node.js-pakket en Python-pakket.
 x86 32-bitx86 64-bitARM 64-bit
macOS/OSX 1
Linux
   - Alpine Linux
   2
   - CentOS
   - Debian / Ubuntu
   - Fedora
FreeBSD 1 3
?
Microsoft Windows4
   - Subsystem for Linux
? 4

Componenten

Aanvullende componenten omvatten: Collector, Standalone agent, Wrap.
 x86 64-bitARM 64-bit
macOS/OSX
Linux
   - Alpine Linux
1
1
   - CentOS
   - Debian / Ubuntu
Microsoft Windows2
   - Subsystem for Linux
? 2
? 2
Docker image
3
3
Er hoeven geen aanvullende dependencies te worden geïnstalleerd voor deze componenten, tenzij vermeld in hun installatiehandleidingen.
  • 1: Alpine Linux wordt alleen ondersteund door Wrap.
  • 2: Werkt niet native op Windows. AppSignal biedt geen officiële ondersteuning voor het Windows Subsystem for Linux.
  • 3: Wrap is niet beschikbaar als Docker image.

Linux

AppSignal probeert Linux zo goed mogelijk te ondersteunen, maar enkele wijzigingen in ons buildproces hebben problemen veroorzaakt bij het ondersteunen van bepaalde Linux-distributies en -versies. Onze agent en extension worden gecompileerd tegen libc, en op basis van welke versie van libc we compileren, ondersteunen we bepaalde oudere versies van Linux-distributies en sommige niet.

Ondersteunde versies

De AppSignal-ondersteuning voor versies van libc is in de afgelopen versies van de Ruby gem en het Elixir-pakket veranderd. Dit is de lijst met versies van libc/musl waartegen AppSignal is gecompileerd over de afgelopen versies van onze integraties:
  • AppSignal voor Ruby v1.0.0 - v2.0.x
    AppSignal voor Elixir v0.0.x - v0.10.x
    • libc v2.5
    • musl N/A
  • AppSignal voor Ruby v2.1.x - v2.3.x
    AppSignal voor Elixir v0.11.x - v1.3.x
  • AppSignal voor Ruby v2.4.x en hoger
    AppSignal voor Elixir v1.4.x en hoger
    AppSignal voor Node.js v1.0.0 en hoger
    AppSignal voor Python v0.1.0 en hoger
    • libc v2.15
    • musl v1.1.16
Als uw systeem een oudere libc-versie gebruikt dan de AppSignal-extension is gecompileerd tegen, zult u problemen ondervinden bij het installeren of uitvoeren van de AppSignal-agent. Als dit het geval is, kunt u in plaats daarvan opt-in voor de musl-build, die dit probleem niet heeft. Dit zou geen probleem meer moeten zijn voor AppSignal Ruby gem v2.4.1 & Elixir-pakket v1.4.3 en hoger; in deze pakketten is automatische detectie voor oudere libc-versies toegevoegd en ze schakelen automatisch over naar de musl-build. Waarschuwing voor JRuby: JRuby-ondersteuning op Alpine Linux (musl-build) wordt ondersteund sinds Ruby gem 2.8.0. Dit scenario vereist een dynamische build van de AppSignal-extension, die niet wordt ondersteund voor de musl-build voor oudere versies van de gem. U kunt zien welke versie van libc uw systeem gebruikt door het volgende commando uit te voeren: ldd --version 2>&1 Voorbeeld van uitvoer op Ubuntu 12.04:
$ ldd --version 2>&1
ldd (Ubuntu EGLIBC 2.15-0ubuntu10.18) 2.15
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

Musl-build override

Om handmatig opt-in te kiezen voor de musl-build, voegt u de omgevingsvariabele APPSIGNAL_BUILD_FOR_MUSL toe aan uw systeemomgeving voordat u AppSignal installeert en uw applicatie compileert. Deze omgevingsvariabele is alleen nodig als onze automatische detectie de juiste architectuur niet detecteert.
# For Ruby
export APPSIGNAL_BUILD_FOR_MUSL=1
gem install appsignal
# or with Bundler
bundle install

# For Elixir
export APPSIGNAL_BUILD_FOR_MUSL=1
mix deps.get
mix compile

# For Node.js
export APPSIGNAL_BUILD_FOR_MUSL=1
npm install

# For Python
# Not supported

Linux ARM build override

De AppSignal-pakketten detecteren automatisch op ARM gebaseerde hosts en selecteren de agent en extension om te installeren voor ARM-systemen. Wanneer deze detectie niet werkt, kiest u handmatig voor de Linux ARM-build met de omgevingsvariabele APPSIGNAL_BUILD_FOR_LINUX_ARM. Voeg deze toe aan uw systeemomgeving voordat u AppSignal installeert en uw applicatie compileert. Deze omgevingsvariabele is alleen nodig als onze automatische detectie de juiste architectuur niet detecteert.
Beschikbaar in deze pakketten:
  • Ruby gem 3.0.8 of nieuwer.
  • Elixir-pakket 2.1.8 of nieuwer.
  • Node.js-pakket 1.2.6 of nieuwer.
Niet ondersteund in ons Python-pakket.
# Set this environment variable
# Note: How environment variables are set may be different for your Operating
# System.
export APPSIGNAL_BUILD_FOR_LINUX_ARM=1
# Run the install command, such as: bundle install, npm install, mix compile

Alpine Linux

  • Ruby: ondersteunt Alpine Linux sinds Ruby gem-versie 2.1.0. (JRuby wordt niet ondersteund op Alpine Linux.)
  • Elixir: ondersteunt Alpine Linux sinds Elixir-pakketversie 0.11.0.
  • Node.js: ondersteunt Alpine Linux sinds Node.js-pakketversie 3.0.2. Niet ondersteund voor Node.js-versie 14.
In AppSignal voor Ruby versie 2.4.0 en AppSignal voor Elixir 1.4.0 zijn we begonnen met het leveren van een aparte build voor Alpine Linux. Als u heeft geüpgraded vanaf een eerdere versie en problemen heeft met het compileren van uw app, werkt onze detectie niet goed. De volgende systeemdependencies zijn vereist voor Alpine Linux:
# Dependencies for the AppSignal Ruby gem
apk add make gcc musl-dev musl-utils

# Dependencies for the AppSignal Node.js package
apk add python3 make g++

# Dependencies for the AppSignal for Elixir package version 1.7.0 and newer
apk add make gcc musl-dev musl-utils
# Dependencies for the AppSignal for Elixir package version 1.6.3 and older
apk add make gcc musl-dev musl-utils curl
Voor alle integraties is de detectie gebaseerd op de uitvoer van ldd --version. Als uw app het programma ldd niet kan aanroepen of de detectie om een of andere reden niet klopt, kunt u de Alpine Linux-compatibele build forceren door een speciale omgevingsvariabele op te geven tijdens de installatie.
# For Ruby
export APPSIGNAL_BUILD_FOR_MUSL=1
gem install appsignal
# or with Bundler
bundle install

# For Elixir
export APPSIGNAL_BUILD_FOR_MUSL=1
mix deps.get
mix compile

# For Node.js
export APPSIGNAL_BUILD_FOR_MUSL=1
npm install

Ruby

Voeg voor de Ruby gem dit toe aan uw Gemfile:
gem "appsignal", ">= 2.1.0" # or a newer version
Voor de laatst beschikbare versie zie de volledige lijst op RubyGems.org en als u problemen ondervindt, laat het ons weten.

Elixir

Als u het Elixir-pakket gebruikt, voeg dit dan toe aan de deps-sectie van uw mix.exs- bestand:
{:appsignal, ">= 1.0.0"} # or a newer version
Voor de laatst beschikbare versie zie de volledige lijst op Hex.pm en als u problemen ondervindt, laat het ons weten.

Node.js

Als u het Node.js-pakket gebruikt, voeg dit dan toe aan de dependencies-sectie van uw package.json-bestand:
Text
"@appsignal/nodejs": "^3.0.2"
Voor de laatst beschikbare versie zie de volledige lijst op NPM en als u problemen ondervindt, laat het ons weten.

CentOS

CentOS wordt volledig ondersteund door de AppSignal-extension. Afhankelijk van uw CentOS-versie moet u mogelijk een ander buildtype selecteren voor AppSignal Ruby gem v2.4.0 en AppSignal voor Elixir v1.4.0 en hoger. De volgende systeemdependencies zijn vereist voor CentOS:
# Dependencies for the AppSignal Ruby gem and Node.js package
yum install gcc gcc-c++ make openssl-devel

# Dependencies for the AppSignal for Elixir package version 1.7.0 and newer
yum install gcc gcc-c++ make openssl-devel
# Dependencies for the AppSignal for Elixir package version 1.6.3 and older
yum install gcc gcc-c++ make openssl-devel curl

# Dependencies for the AppSignal for Node.js package version 2.3.4 or newer, the supported Python versions are those between Python 3.7 and Python 3.10.
# Dependencies for the AppSignal for Node.js package version 2.3.3 or below, the supported Python versions are those between Python 3.5 and Python 3.8.
yum install python3
Voor CentOS 7 en hoger is er geen probleem met het upgraden naar AppSignal voor Ruby v2.4.0 en AppSignal voor Elixir 1.4.0 en hoger. Voor CentOS 6 en oudere versies moet u in plaats daarvan opt-in kiezen voor de musl-build voor AppSignal. Zie voor meer informatie het Linux-gedeelte.

Debian / Ubuntu

De volgende systeemdependencies zijn vereist voor Debian Linux-distributies:
# Dependencies for the AppSignal Ruby gem and Node.js package
apt-get update
apt-get install build-essential ca-certificates

# Dependencies for the AppSignal for Elixir package version 1.7.0 and newer
apt-get update
apt-get install build-essential ca-certificates
# Dependencies for the AppSignal for Elixir package version 1.6.3 and older
apt-get update
apt-get install build-essential ca-certificates curl

# Dependencies for the AppSignal for Node.js package version 2.3.4 or newer, the supported Python versions are those between Python 3.7 and Python 3.10.
# Dependencies for the AppSignal for Node.js package version 2.3.3 or below, the supported Python versions are those between Python 3.5 and Python 3.8.
apt-get install python3

Fedora

De volgende systeemdependencies zijn vereist voor Fedora Linux-distributies:
# Dependencies for the AppSignal Ruby gem
dnf install gcc gcc-c++ make openssl-devel

# Dependencies for the AppSignal for Elixir package version 1.7.0 and newer
dnf install gcc gcc-c++ make openssl-devel
# Dependencies for the AppSignal for Elixir package version 1.6.3 and older
dnf install gcc gcc-c++ make openssl-devel curl

# Dependencies for the AppSignal for Node.js package version 2.3.4 or newer, the supported Python versions are those between Python 3.7 and Python 3.10.
# Dependencies for the AppSignal for Node.js package version 2.3.3 or below, the supported Python versions are those between Python 3.5 and Python 3.8.
dnf install python3

FreeBSD

Ons niveau van FreeBSD-ondersteuning is momenteel onduidelijk. Onze tests tonen aan dat het werkt op FreeBSD 11, maar we hebben het op FreeBSD 12 en nieuwer geen gegevens kunnen laten rapporteren. Ga ervan uit dat het op FreeBSD 12 en nieuwer geen gegevens zal rapporteren.
Ondersteuning voor FreeBSD-systemen is toegevoegd in AppSignal voor Ruby gem 2.4.0 en AppSignal voor Elixir-pakket 1.4.0. Het ondersteunt momenteel niet de host metrics-functie. De volgende systeemdependencies zijn vereist voor FreeBSD Linux-distributies:
pkg install gcc gmake openssl-devel

# Dependencies for the AppSignal for Node.js package version 2.3.4 or newer, the supported Python versions are those between Python 3.7 and Python 3.10.
# Dependencies for the AppSignal for Node.js package version 2.3.3 or below, the supported Python versions are those between Python 3.5 and Python 3.8.
pkg install python3

macOS

macOS (OS X) 10.14.x en hoger wordt ondersteund door AppSignal voor Ruby, Elixir & Node.js. Het ondersteunt momenteel niet de host metrics-functie. Zorg ervoor dat Xcode is geïnstalleerd met de command line build tools.
xcode-select --install

# Dependencies for the AppSignal for Node.js package version 2.3.4 or newer, the supported Python versions are those between Python 3.7 and Python 3.10.
# Dependencies for the AppSignal for Node.js package version 2.3.3 or below, the supported Python versions are those between Python 3.5 and Python 3.8.
brew install python@3

Microsoft Windows

We hebben momenteel geen plannen om het besturingssysteem Microsoft Windows te ondersteunen. We proberen wel om de AppSignal-bibliotheken installeerbaar te maken op Microsoft Windows zonder fouten of build-issues, zodat de app waarin deze is geïnstalleerd blijft functioneren. Als u Microsoft Windows gebruikt en wilt dat we het ondersteunen, stuur ons dan een e-mail.

Ruby

Om de AppSignal Ruby gem te installeren op Microsoft Windows, zorg ervoor dat u de RubyInstaller DevKit heeft geïnstalleerd voordat u AppSignal installeert. Anders zal de volgende fout optreden tijdens de installatie van onze C-extension. We zullen de C-extension niet installeren op Microsoft Windows, maar de Ruby-installatie detecteert dat deze deel uitmaakt van de gem en zal niet doorgaan zonder de DevKit.
$ gem install appsignal
Fetching appsignal 2.2.1
Installing appsignal 2.2.1 with native extensions
Gem::InstallError: The 'appsignal' native gem requires installed build tools.
Please update your PATH to include build tools or download the DevKit
from 'http://rubyinstaller.org/downloads' and follow the instructions
at 'http://github.com/oneclick/rubyinstaller/wiki/Development-Kit'

Microsoft Windows Subsystem for Linux

We bieden geen ondersteuning voor het Microsoft Windows Subsystem for Linux.
Het Microsoft Windows Subsystem for Linux (WSL) is een laag tussen Microsoft Windows en een Linux-distributie. Dit maakt het mogelijk om bepaalde GNU/Linux-distributies, die beschikbaar zijn in de Microsoft Store, te draaien op uw Microsoft Windows-computer. Het draaien van een app op WSL met een AppSignal-integratie zal geen fouten of build-issues veroorzaken, zoals beschreven in het gedeelte Microsoft Windows. Het draaien van AppSignal op WSL werkt zo goed als WSL het ondersteunt. Volg de stappen voor uw Linux-distributie op deze pagina in de WSL-omgeving om de AppSignal-dependencies correct te installeren, voordat u AppSignal in uw app installeert. In onze tests met behulp van Ubuntu WSL hebben we ontdekt dat de meeste AppSignal-functies werken, maar we kunnen niet zeggen hoe nauwkeurig de daarmee verzamelde informatie is. Sommige kleine verschillen tussen de implementatie van WSL en onze Linux-testsetups kunnen vreemd gedrag of het onnauwkeurig rapporteren van metrics veroorzaken. We testen niet actief tegen WSL en kunnen de succesvolle werking ervan niet garanderen. We bieden geen ondersteuning voor AppSignal op de WSL. Niet alle AppSignal-functies werken op het WSL-systeem; in onze tests hebben we bevestigd dat host metrics voor disks (gebruik en IO) niet werken. Gebruik het WSL-systeem om de integratie van AppSignal met uw app in een ontwikkelomgeving te testen, maar gebruik deze setup niet in een productieomgeving. Test uw app altijd eerst met AppSignal in een stagingomgeving met een vergelijkbare omgeving (besturingssysteem) als de productieomgeving van de app.