1.6 KiB
Function logs
We currently support the following function logs stores and they are passed in
via the FN_LOGSTORE_URL environment variable. For example:
docker run -e "FN_LOGSTORE_URL=sqlite3:///functions/logs/fn.db" ...
settings FN_LOGSTORE_URL to FN_DB_URL will put logs in the same database as
other data, this is not recommended for production.
sqlite3 / postgres / mysql (default)
NOTE: if you leave FN_LOGSTORE_URL empty, it will default to FN_DB_URL. this is recommended if you are not using a separate place for your logs for connection pooling reasons.
example URL: sqlite3:///functions/logs/fn.db
sqlite3 is an embedded database which stores to disk. If you want to use this, be sure you don't lose the data directory by mounting
the directory on your host. eg: docker run -v $PWD/data:/functions/data -e FN_LOGSTORE_URL=sqlite3:///functions/data/fn.db ...
sqlite3 isn't recommended for production environments
minio / s3
If you have an s3-compatible object store, we are using only put_object and
get_object and you may point FN_LOGSTORE_URL at that api's url appropriately.
If you don't have one of those running, you may run minio, an example is
below:
$ docker run -d -p 9000:9000 --name minio -e "MINIO_ACCESS_KEY=admin" -e "MINIO_SECRET_KEY=password" minio/minio server /data
$ docker run --privileged --link minio -e "FN_LOGSTORE_URL=s3://admin:password@minio:9000/us-east-1/fnlogs" fnproject/fnserver:latest
you may include any other necessary args for fnproject, this example only illustrates running a minio server and the required args for a functions server to use it.