Microagent compatibility matrix

Sqreen Microagents use multiple dynamic instrumentation points as hooks through which they monitor and collect security metadata in your application. A microagent, therefore, must be compatible with the frameworks, libraries, and web application servers that your application uses.

Listed below are the technologies with which each microagent is compatible. Please contact us directly to request support for a technology that you do not see listed.

Node.js microagent

Compatibility Supported Not supported
Operating systems Linux, macOS, Windows -
Runtime versions 4.0 and greater -
Web frameworks Express 4.0 and greater, hapi 13 - 16 Koa, hapi 17+, Fastify
Databases MariaDB, MongoDB, MySQL, PostgreSQL, SQLite, MS SQL Server, Oracle
Templating engines Jade -
User monitoring passport-local, passport-http, SDK for user monitoring -

Ruby microagent

Compatibility Supported Deprecated Not supported
Operating systems Linux, macOS High Sierra - Catalina, Solaris x86-64 architecture and GCC 4.9+ - Windows
Runtime versions Ruby 2.0 - 2.6, JRuby 9.2 Ruby 1.9.3 JRuby 9.1
Web frameworks Rack, Rails 3.2 - 6.0, Sinatra 2.x - Rails 2.x, 3.0, 3.1
Web app servers Passenger, Puma, Rainbows, Thin, Unicorn, WEBrick - Falcon
Databases Database support requires Active Record.

MariaDB, MongoDB, MySQL, PostgreSQL, SQLite
- MS SQL Server, Oracle
Templating engines ActionView, ERB, Haml, Slim, Temple -
User monitoring Devise, SDK for User monitoring -

PHP microagent

Compatibility Supported Not supported
Operating systems Debian 7 - 10, Linux 1.1.0 (Alpine), Enterprise Linux 7 (RedHat, CentOS, Amazon Linux), Ubuntu 14.04 macOS, Solaris, Windows
Runtime versions 5.3 - 5.6, 7.0 - 7.4 -
Web frameworks CodeIgniter, Laravel, Symfony, Zend -
Databases MongoDB, MySQL, PostgreSQL SQLite, MS SQL Server, Oracle
User monitoring SDK for user monitoring -
APMs New Relic, Blackfire by Sensiolabs, Datadog -

Java microagent

Compatibility Supported Not supported
Operating systems Linux, macOS, Windows Solaris
Runtime versions 1.6 and greater -
Web frameworks Sprint Boot Netty, SparkJava, Play
Web app servers GlassFish, JBoss, Jetty, Tomcat, Untertow, WebLogic, WebSphere, WildFly -
Databases MariaDB, MongoDB, MySQL, PostgreSQL, Oracle SQLite, MS SQL Server
Templating engines FreeMarker 2, JavaServer pages (JSP), Velocity 2, org.codehaus.groovy, GSP on Grails 2 and 3, Thymeleaf 2 and 3 -
User monitoring SDK for user monitoring -

Oracle Glassfish 5.0

Glassfish 5.0 has a known compatibility issue with Java 8 after update 151, which prevents a proper connection to any external service using SSL/TLS for secure communication. Do not use a version later than update 151

Go microagent

Compatibility Supported Not supported
Operating systems Linux, macOS, Windows Solaris
Runtime versions last two major versions -
Web frameworks net/http, echo, gin gRPC
Databases Every SQL database accessed through database/sql -
User monitoring SDK for user monitoring -

Python microagent

Compatibility Supported Not supported
Operating systems Linux, macOS Solaris, Windows
Runtime versions CPython 2.7, and 3.4 - 3.8 JPython, PyPy
Web frameworks Django 1.6 and greater, Flask 0.10 and greater, Pyramid 1.6 and greater, aiohttp 2.2, 2.3, 3.0, 3.1 (see note below), Pylons Bottle, Tornado, web2py
Web app servers chaussette, gunicorn, uWSGI (see note below), waitress, most WSGI-compliant servers ASGI
Databases MongoDB, MySQL, PostgreSQL, SQLite MS SQL Server, Oracle
Templating engines Django, Jinja2 -
User monitoring Django, SDK for user monitoring -

aiohttp

The aiohttp server must use either the built-in asyncio event loop or the uvloop.

uWSGI

The Python agent is fully compatible with uWSGI servers. When using uWSGI, you must include several options. Refer to Python microagent compatibility for details.