# Functions

There are two types of RainerScript functions: built-ins and modules. Built-in functions can always be called in the configuration. To use module functions, you have to load the corresponding module first. To do this, add the following line to your configuration:

    module(load="<name of module>")

If more than one function with the same name is present, the function of the first module loaded will be used. Also, an error message stating this will be generated. However, the configuration will not abort. Please note that built-in functions will always be automatically loaded before any modules. Because of this, you are unable to override any of the built-in functions, since their names are already in use. The name of a function module starts with fm.

- Built-in Functions
  - cnum()
  - cstr()
  - dyn_inc()
  - exec_template()
  - exists()
  - field()
  - format_time()
  - get_property()
  - getenv()
  - int2hex()
  - num2ipv4() / ipv42num()
  - is_time()
  - lookup()
  - parse_json()
  - parse_time()
  - percentile_observe()
  - previous_action_suspended()
  - prifilt()
  - random()
  - re_extract()
  - re_extract_i()
  - re_match()
  - re_match_i()
  - replace()
  - script_error()
  - strlen()
  - substring()
  - tolower()
  - toupper()
  - ltrim() / rtrim()
  - wrap()
- Module Functions
  - Faup
  - HashXX
  - HashXXmod
  - HTTP-Request
  - Unflatten

Support: rsyslog Assistant | GitHub Discussions | GitHub Issues: rsyslog source project

Contributing: Source & docs: rsyslog source project

© 2008–2025 Rainer Gerhards and others. Licensed under the Apache License 2.0.