Zagreus 1.5.6.1 is the current officially released version.
Hotfix changes:
1.5.6.2 (alpha version)
ENGINE:
- new feature: mstrrest:call action handles the binary values in result-type attribute, Note that in case of HTTP Error 406, the mstrrest:header-param child action must be specified: Accept="application/octet-stream"
1.5.6.1_P01 (2024-08-12)
ENGINE:
- update: grid-settings attribute in mstr:dossier action is implemented
SERVER:
1.5.6.1 (2024-04-22)
METADATA WILL BE UPDATED!
SERVER:
- new feature: Execution parameters and queuing options are updated and can be defined in server, group and user level.
Execution parameters:
- maximum_parallel_execution
- log_level
- executing_user_name
- executing_user_id
Queuing options:
- queuing_timeout
- maximum_parallel_queuing
- priority
- queue_group_id
- job_monitoring
- execute_script_on_error
- execute_script_on_cancel
- execute_script_on_cancel_source
- new feature: New password policy features are implemented (can be configured in conf.properties):
- minimum length of password (default: 10)
- minimum number of numeric characters (default 1)
- minimum number of capital letters (default 1)
- minimum number of special characters (default 1)
- new feature: The queue_group_id parameter can be a comma separated list of numbers. E.g. When there are 2 queues defined and queue_group_id=1,2 then all scripts (executed in that group) will use both queues.
- new feature: New system variable is implemented: $home - The path of the user or group home folder.
- update: The values of worker id-s can only have values between 1 and the maximum number of workers which is defined in the license. Eg. if an license allows to start maximum 5 workers, the worker id-s must be 1,2,3,4,5 and there is no possibility to use worker id-s like e.g. 2,3,4,5,6
- update: In zagreus/server/log/srv logfile server start and stop entries have “+++” characters.
- update: $callerResourceId (which included the version) is separated to 2 variables: $callerResourceId (without the version) and $callerResourceVersion
- update: Subgroup feature is deprecated from this version. Only groups can be created by admin users.
- bugfix: When a user is migrated to a different server with zs:migrate-user-group, the password validity of the migrated user will be set based on the target server’s the password policy settings.
ENGINE:
- new feature: "success-exit-codes" attribute is implemented for z:system action. It is a comma-separated list of acceptable exit codes (treated as success). In some special cases, not only exit-code=0 is treated successful. Only applied when async="false"
- new feature: standalone worker module license check is implemented. Path for the license key: zagreus/worker-controller/worker/conf/key.txt
- new feature: parentpath() function returns the parent path of the given path parameter. E.g: ${parentpath('/users/zagreus/folder/script')} returns '/users/zagreus/folder'
- new feature: New attribute in zs:migrate action: overwrite-options-and-variables=true/false. In case of the resource is a script, if this attribute is "true", the variables and options of the source script will overwrite the variables and options of the existing resource. When set to "false", the variables and options of the target script will remain.
- new feature: zs:setdescription action is implemented: Changes the description of a resource, user or group. The new description has to be specified in the text content of the action.
- update: In mstr:excel action the excel-export-version attribute is removed, since MicroStrategy can export only .xlsx (version 2007) files. It is set to excel-export-version=2007.
- update: When the value of "connection-name" attribute is incorrect a meaningful error message is thrown: "Wrong connection format or connection-name: xxx". Affected action groups: Confluence, DB, FTP, Jira, LDAP, Mail, MDX, MSFT, MSTR, MSTRREST, REST
- bugfix: In excel:data action when data-format=word-wrap was used, unnecessary borders were applied for the cells in the resulting excel table. This is fixed.
- bugfix: In mail:send action when the attached filename was longer than 60 characters, the filename was broken in the received email. This is fixed.
- bugfix: Actions with alias attributes propagate their results to their parent action correctly. There were overwriting and merging problems with records prior this bugfix.
GUI:
- new feature: Sendscript definitions can be imported from a group that is accessible for the user, e.g. /groups/public folder.
E.g.: A sample sendscript configuration file:
/groups/public/sendscripts.txt
.sendscript definition file in the user's home folder:
import /groups/public/sendscripts.txt
- new feature: Automatic scroll-down is implemented when opening a job log from “Finished logs” panel. It works only when double-clicking log opening is enabled. Can be configured in GUI: "Tools/Options/General behaviour"
- update: Possible values are listed for "output-encoding" common attribute.
- update: The default connection type in GUI is “Secure” (port: 7443). Note: When the "Secure" checkbox is unchecked, the port will automatically change to 7323.
- update: The description text area of “Resource info” dialog is enlarged.
MONITOR:
- update: The default connection type in Monnitor is “Secure” (port: 7443). Note: When the "Secure" checkbox is unchecked, the port will automatically change to 7323.
1.5.6.0_P03 (2024-01-23)
ENGINE:
- new feature: rest:connection has a new attribute: "proxy=host:port"
1.5.6.0_P02 (2024-01-18)
ENGINE:
- bugfix: db:load action handled 'null' values for bit data type in MS SQL Server incorrectly. This bug is fixed.
- bugfix: msft:create-folder action can create folders containing spaces in the name.
GUI:
- update: "Manage certificates" dialog refreshes automatically when switching between Zagreus-Server and Zagreus-WorkerController tabs
MISC:
- update: JSON.jar file is placed from 'lib/mstr' folder to 'lib/misc' folder in worker module (otherwise 'java.lang.NoClassDefFoundError: org/json/JSONObject' error was thrown if older mstr liberary was used)
1.5.6.0_P01 (2024-01-12)
ENGINE:
- new feature: "result-type" attribute for "rest:call" action is implemented which is the return type of the result (if the operation has a result). The "json" type is automatically beautified. Default: "json"
- new feature: Levenshtein distance function Levenshtein distance is a measure of the similarity between two strings, which takes into account the number of insertion, deletion and substitution operations needed to transform one string into the other.
- update: $callerResourceId variable (which included the ID and the version of the resource until this version) is divided to: $callerResourceId and $callerResourceVersion
GUI:
- new feature: Certificates can be downloaded from the "Manage certificates" dialog.
- new feature: Both "Manage certificates" panels refresh automatically when adding or deleting certificates.
1.5.6.0 (2023-11-23)
SERVER:
- bugfix: version rename fix When a script version was renamed, the other versions were not renamed. This is fixed.
- bugfix: group variables: When a script is executed locally in a group, only those group variables will be listed at the beginning of the log (and can be used in the script) which are defined for that specificgroup. Note: try to avoid using the same group variable names in multiple groups, because when a user belongs to multiple groups that use the same variable names the system cannot decide clearly which variable is referred in the script.
ENGINE:
- new action group: wfile A dedicated action group for managing file operations in the worker filesystem.
- new feature: worker-output common attribute It provides the same functionality as the output attribute, but it saves the result into the worker-filesystem.
- new feature: worker-filesystem This new feature allows the user to store files on the worker side filesystem. The root of the worker-filesystem is located in the worker module root folder, zagreus/worker-controller/worker/filesystem subfolder by default. This location can be configured in the worker.properties configuration file.
- new feature: z:execute
Zagreus can execute external (3rd party) scripts e.g. Python, R, Powershell, etc. by using z:execute action.
- new feature: standalone worker
The Zagreus worker module can be started as a standalone command line application and execute one specific script.
- new feature: exit and exit-message common attributes
exit=true/false - when set to true, the execution will be stopped after that specific action - this simulates using the z:exit action
exit-message: the same as "message" attribute in z:exit action
- new feature: result-encoding attribute
It specifies the encoding of the server response is implemented for rest:call and mstrrest:call actions:
- new feature: JSON beautifying
When the result of an action (rest:call, mstrrest:call, jira:call, confluence:call and json action group actions) is json, it will be beautified.
- new feature: modulo function is implemented: mod(number,number) - Returns the remainder after dívision. Works only for integers.
- update: macro-before and macro-after attributes are deprecated in excel:data action
- bugfix: encode/decode functions work without specifying the IV parameter
- bugfix: SQL Server bit datatype values are handled corretly
- bugfix: z:cast with null input will return null
- bugfix: mstr:excel Incorrect xlsx files were generated from some MSTR reports when excel2007=true. This bug is fixed.
- bugfix: zs:list was listing the content of the root folder when false parent-id was used. This bug is fixed.
GUI:
- new feature: certification maintenance The server and worker keystores can be maintained directly from the GUI (Server definition node context menu/Administrator options/Manage certifications...). After inserting new certificates, no restart is needed.
- new feature: action label default values When opening the label of a script, the action name is used by default.
- new feature: Version number is displayed in the header of GUI
- update: result messages are shown in the Finished jobs panel by default
- bugfix: multiple versions of a script were copied incorrectly to a target server (Copy of... scripts were created). This bug is fixed.
1.5.5.7_P04 (2023-05-22)
SERVER:
- new feature: users.idle.threshold specifies a time range in which the logged in users are displayed in Zagreus Monitor and in "zagreus_status.bat" / "zagreus.sh status". Default value is one day (in milliseconds), which means that the users whose idle time is more than 1 day from the given time moment are not displayed. This is useful for filtering out users who were not logged out properly (e.g. the Zagreus Client was killed) and would have an idle time forever.
ENGINE:
- new feature: in zip:file action wildcard attribute is implemented. When it is specified, the filtered items by the wildcard are also added to the ZIP file. Asterisk (*) and question mark (?) characters can also be used.
- new feature: alias-local common attribute is implemented. If specified, the result of the action will be stored in the specified local variable. It is recommended to use scope=local attribute in z:variable or alias-local common attribute in parallel loops.
- new feature: mstrrest:call action displays detailed error messages
- new action: pdf:extract-text extracts text from a PDF resource
- bugfix: "log", "log-attributes" and "log-result-attributes" attributes are logging their results at loglevel:user
- bugfix: mstrrest:call action has several bugfixes:
- bugfix for special case: when an mstr:rest actions threw an exception and the next iteration could start (because of on-error-next-sibling=true) the running job was hanging
- connections used in loops are closed properly
- when using in a loop with http-mehod=POST or PUT, the action body was not properly refreshed
- bugfix: output attribute with z:filter was not working. This is fixed.
GUI:
- new feature: the user can open the original script content of a finished job
- bugfix: Confluence test connection ignores actual space setting because of server side limitations
MISC:
- new feature: zagreus html pages (for starting scripts from webservice calls) work over https protocol
1.5.5.7_P03 (2023-04-21)
GUI:
- bugfix: Confluence test connection works with empty "space" attribute
- bugfix: Confluence test connection work correctly up until 10000 spaces when "space" attribute is specified.
ENGINE:
- update: Confluence and Jira action groups use HttpClient instead of HttpURLConnection classes for more reliable operations.
- bugfix: confluence:call and jira:call actions work as expected
- bugfix: in some cases formatting was incorrect when using mstr:report in excel:data (displaying "[RED]" in conditionally formatted cells). This is fixed.
1.5.5.7_P02 (2023-03-09)
ENGINE:
- update: db:load handles oracle tables and synonym tables both with fully qualified references and simple table references without schema name. E.g. both schema.tablename or tablename can be used in "table" attribute. If only tablename is referenced, the schema defined in the connection will be used.
- bugfix: In db:load action when replace-method=truncate, it uses the fully qualified name in the query - no more "table or view doesn't exist" error message
- bugfix: In rest:call action rest:request-param sub-action was restricted to be used only with GET and DELETE http-methods in rest:call action. From this version rest:request-param can be used for all http-methods.
- bugfix: concat(input-object,delimiter-text) function works as expected.
- bugfix: rest:call action properly handles all special characters in "url" attribute and in "request-param" child action "value" attribute
- bugfix: in rest:call action connection closing error in while and do-while loops fixed
MISC:
- update (linux): information about running processes is displayed automatically after calling "zagreus.sh start/stop/restart"
1.5.5.7_P01 (2023-02-22)
ENGINE:
- new action: msft:get-access-token action obtains the access token to be re-used. All actions in Microsoft action group has a new attribute called "access-token".
- update: removed default value ("i") of loop-counter in z:foreach, z:while, z:do-while actions
- update: in excel:data action "The maximum column width for an individual cell is 255 characters" error is fixed when a column was too wide in the table
- bugfix: mstr:excel exported tables with incorrect column width. This is fixed.
MISC:
- update: hotfix updater will update mysql components only if they are not updated yet
1.5.5.7 (2023-02-01)
SERVER:
-
new-feature: ‘valid-to’ variable can be set to non-admin user in this format: '2023-01-01'. The user that has a valid_to variable lower than the current day is not able to log into Zagreus. Main features:
- Only non-admin user variables are checked at the time of login. Date is inclusive. (The specified day is still valid.)
- Only admin can save this special variable.
- Non-admin user can see but can not change its value.
- Admin can not modify another admin’s valid_to variable.
- new feature: coalesce(input1, input2, …) function is implemented that returns the first non-null element of the input list. E.g.: coalesce(null, null, 'Zagreus') returns 'Zagreus'
- new feature: "docurl" variable is designed to create dynamic links pointing to html sites (e.g. documentation pages). When this variable is defined, a link icon will be displayed in the Resource info window.
Confluence page: https://etixpert.atlassian.net/wiki/spaces/ZDOC/pages/588513301/DOCURL
- update: variable.server.dokuwikiurl is deprecated (see docurl feature above!)
- bugfix: "Connect" feature works for IMAP and POP3 connections when ssl=true.
ENGINE:
- new action group: REST - actions to communicate via REST API interface. Actions of the group:
- rest:connection - Defines a REST connection.
- rest:call - Calls a REST API function.
- rest:header-param - Refers to a header parameter of the rest:call action
- rest:request-param - Refers to a parameter of the rest:call action
- rest:part - Refers to a multipart item of the rest:call action in case when attribute multipart is set to true.
-
new feature: The following functions are implemented:
- createdid(id-text) creates a fully qualified resource ID with the default version.
- createid(id-text, version-text) creates a fully qualified resource ID with the given version.
- getidpart(input-text) returns the ID part of the full resource ID.
- getversionpart(input-text) returns the version part of the full resource ID.
- update: jira:filter-issues - "filter" attribute is renamed to "jql"
- update: log-attributes - when using log-attributes=true, in the result list "attribute" will be used instead of "attribute-name"
- update: zs:migrate action will overwrite the target object if the ID is the same but the scriptpath or scriptname is different (only if overwrite=true).
- bugfix: jira:list-projects - jira:list-projects action fills $errorMessage variable correctly. In the previous version this system variable was empty in case of errors.
- bugfix: zero based indexing for arrays is fixed. From this version the indexing is 1 based for indexed arrays. E.g.: ${x[0]} will throw an error.
GUI:
- new feature: Ctrl+H hotkey will display the help of the selected action.
- new feature: sendscript feature: There is a possibility to send resource parameters and execute certain scripts in GUI. After right clicking on a resource in the Zagreus browser panel, a new menu item will be displayed, called "Send" and it displays a list of scripts. The selected script will be executed with the parameters of the selected resource. The scripts can be defined in .sendscript (plaintext) configuration file that must be placed in the root folder of the user. E.g.:
/admin/to_send_script;Migrate resource to PROD server
Both script path or script ID can be used to define the listed scripts. Aliases (separated by ";") can be used for the scripts that will be presented in the list. The parameters of the resource that are sent to the selected script are the following:
- input resource ID (containing resource version): $inputResourceId
- input resource name: $inputResourceName
- input resource path: $inputResourcePath
- update: log4j-1.2.17.jar which is a log4j version with vulnerability issues is removed from GUI library
MISC:
- update (windows): checking the running Zagreus processes is simplified by using "tasklist" command
- update (linux): mysql binary files are updated to version 5.5.62
- update: Zagreus server can run over port 80. The TCP/IP port numbers below 1024 are special in that normal users are not allowed to run servers on them. This means, that if you plan to run Zagreus on a port lower than 1024, it must be started wit administrator rights on Windows or as root on linux. The later one can only be done when the metadata is stored in an external database - since the mysql server packed with Zagreus cannot be started as root.
1.5.5.6 (2022-12-07)
SERVER:
- new feature: "cancel.runscript" queuing option is implemented. The script specified script will be called when the script (in which this option is defined) is cancelled. The called script can be specified by ID or path. Variables related to the cancelled job: $callerName, $callerType, $cancelType, $cancelledJobId
- new feature: ”cancel.runscript.source” option is implemented. If option“cancel.runscript” is set, this setting specifies for which cancel types should it be applied. Per default, all cancel types trigger the execution. Possible values are: gui, monitor, zs and server. Multiple values can be specified by “,”. E.g. cancel.runscript.source=gui,zs
- new feature: queue.maximum.parallel.queuing parameter in conf.properties sets the maximum possible simultaneously queued job instances of the same script. Default is -1 which means infinite. It can be defined for individual scripts with engine.maxparallelqueuing option.
- new feature: 2 new parameters are implemented in conf.properties:
If "server.canceljobs.onstop" set to true, all running and queued jobs will be cancelled by the server itself when the server is shutting down. Default values is true. With this feature “zombie” jobs can be avoided after server start.
If "server.canceljobs.onstart" set to true, all possibly running or queued jobs will be cancelled by the server when the server is starting. This can only occur if the server was not stopped properly (e.g. killed).
- update: when some versions of a script are deleted, and we try to save a new version of the existing script, the deleted versions are marked as "x.x.x.x (in recycle bin)". When deleting the old versions permanently, those deleted version numbers can be reused.
- update: new "system variables" are introduced and displayed at the beginning of the job logs: $callerResourceName, $callerResourcePath, $callerType, $executingUserName, $executionMode. With these variables all relevant information can be obtained from a job execution. Deprecated (but still usable) variables: $callerName, $scheduleName, $scheduleId, $schedulePath
- bugfix: recycle bin works correctly both admin and non-admin users as well: all users see only their own deleted content in recycle bin, but admin is able to see all deleted content of all users
- bugfix: file watchers work correctly when the watched folder is a shared network folder. In older versions the scripts were not triggered after a while in these cases.
- bugfix: "Test connection" of Jira and Confluence connections works as expected (error is thrown when the SSL certification is missing)
- bugfix: Several version related bugs are fixed: When versions of a script were deleted and the scrip was moved, the deleted versions reappeared as non deleted items (now it's fixed).
“Save version…” icon is inactive for file system objects.
- bugfix: Test connection error for POP3 TLS connections is fixed. This only occured when POP3 SSL was used before POP3 TSL.
- note: changing connection type of MSTR connection from SSL to normal and then back to SSL causes faulty behavior because of incorrect caching of certificates. Please, avoid this configuration change if possible!
- update: the default SSL port of Zagreus server is changed to 7443. On existing installations it is 8443 by default and can be changed by ssl.listener.port parameter if needed (in server/conf/conf.properties)
ENGINE:
- new action: zs:workercontrol - using this action in a script workers can be started, stopped, restarted, enabled and disabled during execution
- new action: zs:migrate-subscription - It is designed for migrating subscriptions between two Zagreus servers. It copies all data of the subscriptions including variables, options, aliases and their active status. The subscriptions to be migrated can be specified by scripts, schedules or both. Further filtering can be applied by specifying the alias(es) of the subscriptions as well. Note that the IDs of both the schedules and the scripts have to be the same on the two Zagreus servers for all subscriptions involved. Also note that the IDs of the subscriptions will not match.
- new feature: new attributes are introduced in z:parse action:
- quotation: Defines the character (e.g. double quote character) which is used to indicate the special case when there is a column-separator character is present inside the text.
- quotation-start: If the quotation starting and ending characters are different, this attribute can be used to specify the starting one.
- quotation-end: If the quotation starting and ending characters are different, this attribute can be used to specify the ending one.
- new action: confluence:update-comment action updates an existing comment in a Confluence page.
- new action: jira:update-comment action updates an existing comment in a Jira issue. The text of the comment must be specified as the child text of the action.
- new feature: ldap:connection: Zagreus can connect to Microsoft Active Directory servers using ldap:connection
- new feature: mstrrest:header-param subaction is implemented for mstrrest:call action. It can send special header parameters (that are mandatory in some calls) in the REST API call, e.g. when defining changeset-id
- new feature: ldap:search action has a new attribute called "scope" which can set the scope of the results. Possible values: subtree, object, one-level. Default value: subtree
- new feature: xslt:transform: "encoding" attribute is implemented
- new feature: excel:data: "printarea" attribute is implemented for excel:data action which sets the print area for the given sheet (in the standard format, e.g. "A4:E43"). "none" results in removing the previously set print area (not implemented for binary Excel format)
- new feature: test-expr: A new logical expression can be used in test-expr attribute called "in". It returns "true" if the value of the evaluated variable is in the list. E.g.
test-expr=x in ["apple", "pear", "cherry"]
test-expr=NOT job.status in ["error", "cancelled"]
- new feature: z:filter:A new logical expression can be used in "where" attribute of z:filter action. It is called "in" and it returns "true" if the value of the evaluated variable is in the list. E.g.
where=x in ["apple", "pear", "cherry"] //where x is the key of z:filter
- new feature: loop-counter: All iterative action (z:for, z:foreach, z:while, z:do-while) have a new attribute called "loop-counter" that specifies the name of the implicit variable which is used for counting the loops. This variable is changing its value in every loop cycle. "loopcnt" result atribute also the stores the total count the executed loops. NOTE: in z:foreach "counter" result attribute is deprecated, however it still can be used to maintain backward compatibility.
- new feature: skip attribute is implemented for z:head and z:tail actions. It defines the number of lines which will be skipped from the start or the end of the input.
- new feature: skip-head and skip-tail attributes are implemented for file:read action. With these attributes the number of lines which will be skipped from the start or the end of the input can be specified.
- new feature: content-type attribute is implemented for Confluence and Jira actions (Confluence:add-attachement/add-comment/update-comment/call/create-page, Jira:add-attachement/call)
- new feature: concatobject(input-object, inbput-object) system function is implemented: concatenates the elements of the two input-objects. Returns the same type as the first input-object. The possible types of the parameters are: binary, text, list and record types. E.g.
concatobject(list([1, 2, 3]), list([4, 5, 6])) returns a list with the elements 1, 2, 3, 4, 5, 6.
concatobject('Zag', 'reus') returns 'Zagreus'
- new feature: mstr:connection: "locale" attribute is implemented for mstr:connection action which defines the default locale ID. It supports the Java-style locale strings, e.g. "en_US" or "en-US".
- new feature: db:sql: sql-log (true/false) attribute is implemented for db:sql action. If set to true, the executed SQL command will be logged.
- new feature: mstr:prompt: The attribute values of mstr:prompt action (id, name, value) are printed in the log.
- new feature: mstrrest:call: The following result attributes are returned in mstrrest:call action (some result attributes - marked with * - are displayed only if they were defined in the script): http_method, request_parameters*, request_headers*, request_body*, rest_url, http_response_code
- update: file:exist: "filename" attribute of file:exist action can handle "*" and "?" wildcard characters
- update: mstr:metric: "id" attribute is added to mstr:metric action
- update: z:join: in "select" attribute of z:join both "alias = column_reference" and "column_reference = alias" works; the one which does not contain a dot will be handled as the alias.
- update: Using an undefined variable in special Zagreus functions resulted in "nullpointer exception" without any further messages. From this version a meaningful error message is thrown: “input parameter is null at …“. Affected functions: translate, replace, ltrim, rtrim, trim, lower, upper, capitalize, contains, startswith, endswith, locate, rlocate, split, concat, repeat, left, right, encode, decode
- update: excel:workbook: the new default value of excel2007 attribute in excel:workbook action is "true"
- update: db:load: Oracle synonym tables are handled by db:load action
- update: db:sql follows Oracle standards when selecting from two different tables. Result column headers will be: column1 and column1_1 for the following query:
select * from
(select 'a' as column1 from dual) t1
left outer join
(select 'b' as column1 from dual) t2 on t1.column1=t2.column1;
- update: In zs:list action the content of filesystem is excluded if the parent is a user/group home (so zs:list parent-name="/admin/<-filesystem->" works as before, but "/admin" does not returns the filesystem resources).
- update: $queueTimeout: $queueingTime system variable is renamed to $queueTimeout, however the old one can be used as well to maintain backward compatibility. $runTimeout system variable is introduced and it stores the running timout applied for the script.
- update: "for" statement: the sythax of "for" statement is changed in thi version. Old synthax: ${for (item in act_record) {sum := sum + item;}} New synthax: ${for (item inlist act_record) {sum := sum +{ item;}}
- bugfix: bug in mstr:filter action is fixed, so it handles string attributes correctly
- bugfix: mail:sendmail attachements are sent by mail:send even when mail:body action is empty
- bugfix: mstr:cachelist: in the result table of mstr:cachelist action "type" column is filled correctly
- bugfix: z:difference handles null values correctly (e.g.when using the result of db:sql that contains null values)
- bugfix: file:read "rowcnt" result attribute of file:read action shows correct number when tail attribute is used as well
- bugfix: disabled workers could start jobs which was not expected. Ths is fixed in this version.
- bugfix: in mstr:export action when "page-by-required=false" the result attribute "page_by" is set correctly
- bugfix: db:jdbc-connection: "date-format" attribute works correctly when used in db:jdbc-connection (with MSSQL and Teradata)
- bugfix: mstr actions: bug is fixed related to "msgid" attribute, so it can be used in mstr actions without any errors
- bugfix: zs:create* Zagreus objects cannot be overwritten by zs:create* actions accidentally
- bugfix: z:call-template action returns the values used in the nested z:param actions (formerly it returned the parameters used in the z:template action)
- bugfix: db:commit action will not cause errors when "autocommit=true" in db:connection
- bugfix: when copying an object multiple times into the same folder, it will not overwrite the "Copy of..." instance, but a new object will be created called "Copy of (n)...". This is fixed for all related actions (file:copy, file:move, zs:copy, zs:move) and in GUI as well.
- bugfix: debug-output common attribute works as expected
- bugfix: file:move action works as expected when moving objects from metadata to filesystem. In older versions the object was not deleted in the source folder.
- bugfix: zs:list will not raise an error if the value in "parent-name" attribute ends with "/". E.g. "parent-name=/admin/temp/"
- bugfix: z:log action and "log" attribute showed different time values when using mstr:historylist. It was because mstr:historylist action always returned GMT+0 timezone dates (starttime, finishtime). It is now fixed.
- bugfix: mstr:excel generated excel files that could not be read by excel:read action. Now this is fixed and the produced excel files can be imported by excel:read.
- bugfix: stringdiff() bug is fixed in stringdiff() function: If the second string is empty or it is null, stringdiff() returns the first string as described in the help.
- bugfix: text(): hexadecimal values can be used in text() function. E.g. the result of ${text('hex:5A616772657573')} is 'Zagreus'
- bugfix: zs:copy: when trying to copy an object with zs:copy to a folder where it already exists and "overwrite=false" the following error message will be printed in the log: "Overwritemode is skipping, skip saving source file: xxx"
- bugfix: file:dir: it is possible to list the content of /admin or /users with file:dir
- bugfix: in "db:jdbc-connection" action "number-format" attribute works as expected
- bugfix: mstrrest:call bug is fixed (Error message was: "A JSONArray text must start with [ at 1 [character 2 line 1]")
- bugfix: file:split when the last column was empty in the input dataset, it was missing in the result table. This is fixed in this version.
GUI:
- new feature: result messages are displayed in “Script runtime information” dialog.
- new feature: Browsing of IMAP and POP3 mail:connections is implemented in GUI.
- new feature: clicking on “Secure” checkbox on “Define/Modify Zagreus server connection“ dialog will automatically change the server port values to the default ones (Note: if a new value is defined in conf.properties, it has to be edited manually in GUI connection definition!)
- new feature: The system functions are grouped in categories:
- String functions
- Date functions
- Compley type functions
- Numeric functions
- Date type functions
- System functions
This feature can be turned on/off by an icon in the top right corner of the "Variables window".
- new feature:When double clicking on a job in "Finished jobs" tab the log will be opened directly in the text editor. This feature can be turned off/on in Tools/Options/General Behavior
- new feature:The content of the "Active logs" tab can be opened in the text editor directly by clicking on the icon of the top right corner. Only the actual content will be displayed, it is not refreshing over time.
- new feature: When right clicking on a folder, a new menu item is displayed in the context menu: "Create new resource..."
- new feature: When right clicking on an action on the working area, a new menu item is displayed in the context menu: “Help…“ It shows the help description of the action.
- new feature: Help is displayed as tooltip in "Execution and queuing options" when hovering the mouse cursor above the execution/queuing option.
- new feature: There is a new view (beside full and default) which is called "only filled". When this view is applied only attributes with values will be displayed.
- update: ldap examples are updated in GUI help
- update: unwanted whitespaces are removed from the logfiles. Furthermore, there is an additional newline character at the beginning of the content of z:log action and actions with "log=true" for better readability.
- update: the maximum length of object names (e.g. names of scripts or onnections) is increased from 40 to 100
- update: new icons are created for all actions groups. There is a possibility to use the old icons and it can be set in GUI/Tool/Options/Icons.
- bugfix: the help content of system variables and functions is displayed correctly when using font scaling
- bugfix: multiple GUI connections can be established to the same Zagreus server from one GUI instance without problems
- bugfix: when the log message contained characters that coudln't be encoded by Zagreus, the log message was empty in the Finished jobs panel. Now these log are displayed and the unknown characters are replaced with "?".
- bugfix: when GUI is connected to a Zagreus server via SSL (Secure connection) “active logs" and “execution engines” tabs work correctly
- bugfix: For some mail:connection types (ftp, ldap, smtp, imap) "connect" functionality is not possible with GUI. When trying to connect, a meaningful error message is displayed: "Currently this kind of connection browsing is not supported." or “For mail browsing only pop3 and imap protocol is supported“.
- bugfix: When an action was commented out, the drop-down list of the possible values of an attribute was not working. This is fixed in this version.
MONITOR:
- new feature: values can be copied to clipboard by right clicking on the variable on the info panel of a job.
- update: some dialog windows were resized for better looking on scaled desktops
MISC:
- new feature: the hotfix updater asks the user interactively during the update process if mstr libraries and the related configuration files should be updated when a new version is available in the hotfix package. Furthermore, outdated Zagreus certifications are replace automatically.
- new feature (linux): on linux "zagreus.sh status" command can detect "zombie" MySQL processes that are still running without a related Zagreus server
- new feature (windows): on windows "status_zagreus.bat" command can detect "zombie" MySQL processes that are still running without a related Zagreus server
- new feature (linux):until this version worker-controller and workers were killed on linux. Now they shut down normally by calling a newly implemented stop function. "zagreus.sh" script is updated accordingly.
- update: there are several modifications in zagreus.sh (linux) and status_zagreus.bat (windows) files (supressing warning messages, using system user for db calls, setting current server port from conf.properties), "facelift"
- update (linux):a symbolic link cannot be used to define zagreus installation home because of the new SPRING version. E.g. if /home/zagreus points to /home/zagreus_1555 and ZAGREUS_INSTALLATION_HOME=/home/zagreus the server will not be able to start. This means ZAGREUS_INSTALLATION_HOME must be set in set_environment.sh!
- update: MySQL server is updated to version 5.5.62 (and mysql-connector is updated to mysql-connector-java-5.1.49.jar)
- update: Zagreus SSL keys and certifications are replaced in all modules: Zagreus server (workers), GUI, monitor and command-line. The new certification is valid until 2072. The hotfix updater replaces these certifications automatically.
- update: log4j configration is updated: if the logfile reaches the maximum size limit (appender.rolling.policies.size.size=10MB), it will be archived. When this limit is reached again, it will not overwrite the previous archive. It is set by "%i" in:
appender.rolling.filePattern= ${basePath}/srv_%d{yyyyMMdd}-%i.log.gz
- update: /admin/administration/delete_logs script has been updated. It will delete the hs_err* files as well and can create the missing script parameters for itself during the first execution. It is added to the hotfix installer as well (administration folder).
- update: "misc" action group is deprecated and removed from the palette
- update: 11.3.0760 MicroStrategy jar files are added to both server and worker libraries. Hotfix installer offers to update the related config files automatically in order to use the latest MSTR libraries. Internal note: mstr-saml-custom.jar is copied from 0560 version.
- update: SQL Server library jar file is updated to version 11.2 (mssql-jdbc-11.2.0.jre11.jar). Because of that if SSL is not in use apply the following parameters in the connection-string definition of db:jdbc-connection (if the connection is defined by connection-string): "encrypt=false;trustServerCertificate=true". When using attributes for the connection definition (server, port, user, etc.) these parameters are applied automatically. IMPORTANT NOTE for Windows: in java/openjre11/bin the following file must be placed to use windows authentication (this is done automatically by the hotfix): mssql-jdbc_auth-11.2.0.x64.dll (the old sqljdbc_auth.dll must be deleted)
- bugfix (linux): During server stopping “${sys.working.folder}“ was created accidentally in the root of Zagreus. This folder can be deleted and will not be created anymore.
- internal note: new license key generator was implemented for this version!
1.5.5.5 (2022-04-29)
SERVER:
- new feature: server "Test connection" handles "mail:property" child action
- new feature: dokuwikiurl can be set up in conf.properties (e.g. variable.server.dokuwikiurl=https://servername.com/). This will add a clickable link in Resource info panel that points to a web url. The link will be constructed from the base url defined in dokuwikiurl variable + the script ID.
- new feature: Script runtime information shows version numbers (if there are more versions) and shows all information about all versions.
- bugfix: unnecessary whitespace is removed after message in logfiles
- bugfix: Test connection works properly for mstr connections. (if MSTR iserver is at least 11.3)
ENGINE:
- new action group: Microsoft - The actions of this group can communicate with Sharepoint servers to manage emails and files. Actions of the group:
- msft:connection
- msft:copy-mail
- msft:delete-item
- msft:delete-mail
- msft:download-file
- msft:get-mail
- msft:list-drives
- msft:list-folder
- msft:list-mail-folders
- msft:list-mails
- msft:list-sites
- msft:move-mail
- msft:upload-file
IMPORTANT NOTE: In order to use Microsoft action group, please change server configuration accordingly:
on Windows: add the following line to server/service/wrapper.conf (take care of the numbering! This element can be the last item in the classpath.)
wrapper.java.classpath.11=prog/WEB-INF/lib/microsoft/*
on Linux: add these lines to server/bin/setclasspath.sh
LIBPATH=${ZAGREUS_SERVER_HOME}/prog/WEB-INF/lib/microsoft
for LIB in `ls -1 "$LIBPATH"`; do
ZAGREUS_CLASSPATH=$ZAGREUS_CLASSPATH:$LIBPATH/$LIB
done
Worker configuration is modified automatically during the update process both on linux and windows.
- new action group: pdf - Actions for mannipulating and getting contect of pdf documents.
- pdf:extract-images
- pdf:list-resources
- pdf:load
- pdf:merge
- pdf:to-image
- new action group: confluence - Versatile actions for creating, updating and deleing pages in Confluence system. Comments and attachements can also be added to specific pages.
- confluence:add-attachement
- confluence:add-comment
- confluence:connection
- confluence:create-page
- confluence:delete-page
- confluence:get-page
- confluence:list-attachments
- confluence:list-comments
- confluence:list-pages
- confluence:update-page
- new action group: jira - Comprehensive action group to manage issues, comments, attachements and users in Jira system.
- jira:add-attachement
- jira:add-comment
- jira:connection
- jira:create-issue
- jira:delete-issue
- jira:filter-issues
- jira:get-issue
- jira:list-attachements
- jira:list-comments
- jira:list-projects
- jira:list-users
- jira:update-users
- update: mstr:flash and mstr:param actions are deprecated and removed from the palette
- update: mstrrest:pushdata acgtion is deprececated and removed from the palette
- update: z:join has a new attribute: legacy-select (true/false). If set to true, the older (legacy) style assignment is applied in the select statement, i.e. "old_name = new_name". For compatibility reasons, the default is true, but in new Zagreus versions, false is recommended.
- bugfix: in mstr:user action standard-auth-allowed attribute works correctly
- bugfix: in mstr:dir "listing content of null" bug is fixed. Now it displays the path correctly instead of 'null'.
- bugfix: attachements are sent in email even if the mail:body action is empty or missing completely
- bugfix: mstr:user login attribute works correctly
- bugfix: when deletin rows in a table db:sql returns the number of deleted rows in rowcnt result attribute
- bugfix: substring finction works correctly when the second position number is higher than the third
- bugfix: in mstr:export when page-by-required=true it returns with the correct data type
- bugfix: in mail watcher "evaluate watcher condition" works as expected after deleting geronimo-javamail_1.4_spec-1.7.1.jar file
GUI:
- new feature: "Finished logs" panel can show more columns by setting up report parameters: time, action, action number, thread id, message, level. These setting can be found at the upper right corner of the "Finished logs" panel.
- new feature: in "Search for resources" dialog if there are folders in the result list, after double clicking on one of them the folder will be opened in the object browser's folder tree.
MISC:
- update: new Spring version: 5.3.18
- update: new log4j version: 2.17.2. The log4j property files for each modules can be located where the log4j and slf libraries are placed (in misc folders). E.g. for Zagreus server the logger configuration can be found in: zagreus/server/prog/WEB-INF/lib/misc/log4j-conf-server.jar
The following componets are affected: server, worker-controller, worker, monitor, command-line
- update: 11.3.0560 MicroStrategy jar files are added to both server and worker libraries. IMPORTANT NOTE: To use them, please change server and worker configurations accordingly.
- update: the "misc" libraries are provided for command-line applications, therefore they can work independently form the Zagreus server
1.5.5.4 (2021-12-17)
ENGINE:
- new feature: mail:property child action can be used in mail:connection
- bugfix: mstr:dir fields "enabled" and "standard-auth-allowed" are filled properly when using type=User
- bugfix: mstr:dir field "password-expiration-freq" is filled properly when using type=User
- bugfix: excel:read "to-column" attribute works as expected when header=true
GUI:
- bugfix: dialog boxes appear on the same display where Zagreus GUI is positioned when multiple displays are used
- update: the possible values of "content-type" in mail:attachement action are listed
- update: the character limits are deleted for action labels and filenames in filesystem
MISC:
- update: hotfix updater uses JRE11 exclusively during execution
- update: when GUI is already updated copying GUI content is skipped during the update process
1.5.5.3 (2021-12-01)
ENGINE:
- new action: z:list - Creates a list typed value from its content.
- bugfix: mstr:dir action will not created huge number of error messages ("Index out of range") in DSSError.log file when type=User
- bugfix:zs:copy overwrite=false works as expceted
GUI:
- bugfix: Action coordinates cannot have negative y values on the working area, therefore they cannot be dragged behind the parent action's attributes.
- bugfix: File triggers, DB and Mail watchers can be opened directly from "Search from resources" dialog
MISC:
- update: runscript.bat/sh finishes with exit codes (based on the exit code of the job)
- update: java mail library has been replaced (there were SMTP related issues with the old version; used library: javax.mail-1.6.2.jar)
1.5.5.2 (2021-10-20)
SERVER:
- new action: mstrrest:header subaction is implemented (can be used in mstrrest:call).
ENGINE:
- new feature: "output-encoding" common attribute is implemented. It specifies the encoding of the file defined by output and debug-output attributes.
- new feature: "encoding" attribute is added to xslt:transform. It specifies the used encoding for the XSLT file.
- update: "multipart" attribute setting in "mail:send" is ignored in special cases: When "mail:body" is missing or empty the mail is sent as plain text regardless of multipart attribute setting.
- bugfix: Folder cannot be copied into itself with file:copy/move or zs:copy/move to avoid infinite loop.
GUI:
- bugfix: Folder cannot be copied into itself to avoid infinite loop.
MISC:
- bugfix: Workers listed in "Execution engines" tab can be enabled/disabled
- update: In OpenJRE11 TLS1.1 and TLS1.2 protocols are enabled in order to use SSL and TLS connections in mail:connection action
1.5.5.1 (2021-09-06)
ENGINE:
- new action: z:cast converts the content to a different data type. For tables and records, the individual columns might be treated differently, specified either by the "columns" attribute, or the "z:column" child action.
- new feature: "log" and "log-result-attributes" common attributes are implemented. If set to "true", the generated result or result attributes of the action will be logged.
- new feature: mstr:subscriptionlist has a new field in the result table: "isexpired" (true/false). It shows if the subscription is expired or not.
- update: z:system action prints out the command that was executed
- bugfix: the state of the job that is cancelled by zs:cancel action is "Cancelled"
- bugfix: all mstr actions that process reports, documents or dossiers can handle shortcuts
- bugfix: SMTP and POP3/IMAP connections used in "mail:connection" action are closed correctly (either when the job finishes or by using "mail:close" action)
- bugfix: "mstrrest:call" action uses "mstrrest:request-param" correctly (URI length bug is fixed when using mstrrest:call in a loop)
MISC:
- update: command-line scripts call set_environment.bat/sh files to use correct variables (hardcoded paths are replaced)
- update: runscript.bat/sh file can show the status of the script execution (finished, error, cancelled, etc.) based on the exit code of the job
1.5.5.0 (2021-07-23)
OpenJRE11 is introduced and used exclusively!
SERVER:
- new feature: file trigger, db watcher and mail watcher is implemented
- new feature: error.runscript queuing option: When a job fails a secondary script can be executed immediately that reports critical information about the error. Variables related to the job with error: $callerName, $errorJobId
- new feature: "trustedstore.filename" parameter is introduced in conf.properties and worker.properties: In some cases a new filename is needed for proper SSL operations: MSTR system caches the keystore (this is a bug!), in case of new certification installation the old keystore name will not work. With trustedstore.filename a new keystore name can be defined. Install the new iServer certification into the existing keystore, rename the file, specify the new filename here and finally restart Zagreus server.
ENGINE:
- new action group: JSON - available actions: json:add-element, json:add-property, json:create, json:get, json:parse, json:remove
- new action: mstrrest:call can execute MicroStrategy REST API calls
- new feature: new system functions are added: isbinary(), isboolean(), istext(), istime(), isxml()
- new feature: trustedstore.filename (conf.properties, worker.properties): See details above in SERVER section!
- bugfix: the result values of mstr:subsctiptionlist that are longer than 80 characters (e.g. in address-value in special cases) the string is not truncated
- bugfix: z:synchron action works correctly when async=true in zs:runscript child actions
- bugfix: non-admin users cannot use the following administrative actions: zs:backup, zs:servercontrol
- bugfix: when multiple "mail:send" action is called in a loop, the mail connections will be closed automatically and only one connection will be open when the scriptis finished.
GUI:
- update: system functions are updated with examples
MISC:
- update: delete_logs administrative script is optimized. It also deletes the hs_err_* and replay_* log files as well.
- update: "zagreus/updater" folder is deprecated and it is deleted automatically by hotfix updater
- update (windows): shortcuts pointong to "log" folders (e.g. server/log, server/log/jobs, etc.) are deprecated. "delete_logs" script deletes those shortcuts and creates symbolic links automatically.
- update (linux): "create_links_for_filesystem_unix.sh" script in server/filesystem/1 is deprecated and deleted automatically. "delete_logs" script creates symbolic links automatically
- update: config tester checks is "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384" is present in "ssl.listener.cipher-suites" parameter of conf.properties
1.5.4.2 (2021-03-29)
SERVER:
- new feature: New queueing option is implemented: "cancel.runscript". When a script is cancelled (because of queuing timeout, running timeout, manual cancelling and cancelling by zs:cancel action) the script defined in cancel.runscript option will be executed right after the cancellation. New variables can be used in the called script: $cancelledJobId and $cancelType. The variables with monitoring=true from the cancelled script can be referenced in the called script as well.
ENGINE:
- new feature: mstr:dossier action is implemented with all PDF export settings.
- new feature: new attribute called "multipart" (true/false) is implemented in mail:send. If set to true, all parts (body, attachments, inline attachments) are packed into a multipart container; otherwise body is handled as a plain-text part.
GUI:
- bugfix: the child actions are aligned horizontally in the following actions: z:if, z:java, z:join, z:switch, mstr:axis, ws:connection
MISC:
- new feature: Heidisql client is provided with Zagreus Windows version (also added to the hotfix installer). Installation path: zagreus/server/mysql/heidisql
- update: Oracle JDBC driver is updated to version 18.3.
- bugfix: Security issue in Zagreus html pages is fixed.
1.5.4.1 (2021-01-12)
PATCH, Compatible with 1.5.4.0 clients
SERVER:
- bugfix: mysql.port parameter in conf.properties is configurable
- bugfix: windows shortcuts (*.lnk files) are handled correctly when pointing to a network location
ENGINE:
- bugfix: fileds containing "null" values are handled correctly in the result table of mstr:objectinfo
GUI:
MONITOR:
MISC:
- update (linux): in zagreus.sh "start-wc" and "stop-wc" options are implemented
- update (linux): in zagreus.sh mysql port is set from conf.properties
- update (windows): in status_zagreus.bat mysql port is set from conf.properties
1.5.4.0 (2020-12-02)
METADATA AND CLIENTS NEED TO BE UPDATED!
SERVER:
-
new feature: password policy is introduced in Zagreus. Main features:
- passwords are stored in PBKDF2 hashcode format in the metadatabase instead of the old MD5 hashcode format
- passwords are historized
- New server configuration parameters (in server/conf/conf.properties):
- password.validity: password will expire in ... days (default: 90 days)
- password.expiration.reminder: the user will get a reminder before his/her password expires when connecting with the gui or the monitor (default: 7 days)
- password.reusable.after: the same password can be used again after ... changes (default: 6)
- syntax requirements for new passwords: min. 10 characters, min. 1 digit, min. 1 special character
- The administrator can switch on/off the password policy for each user manually.
- The users can change their own password with a new menu item: "Change password..." when clicking on their user home folder. Non-admin users need to know their current password to do this. The administrator does not have to type in the old password when changing somebody else's password.
- new feature: New system variable: scriptParentFolder - The parent folder of the current script.
- new feature: Alias can be defined for subscriptions via "subscription-alias" field (in Subscritions dialog).
- new feature: "Cancel all jobs..." context menu is added to "Server/Administrator options..." menu item, "Active jobs" and "Execution engines" panels. All jobs can be cancelled with the following states: Running, Queued, Suspended, Starting and Debugging,
- update: if a new group is created, "admin" user will be automatically granted with Read, Write, Execute permissions to that group
- update: '$' character can be escaped with '$$' in MSTR connection passwords (also on engine side)
- bugfix: variables (script, user, group, server) can be used in connections - connection can be established from GUI as well.
- bugfix: startscheduler property in conf.properties is used
- bugfix: in some rare cases the planned jobs of a scheduled script were not shown in monitor. This bug is fixed.
- bugfix: resources in Recycle bin are handled at the user level: Non admin users can see and delete/restore only their own resources in Recycle bin. Admin users can access and delete/restore all resources in the Recycle bin. zs:emptyrecyclebin follows this concept as well.
- bugfix: "Test connection" works corretly for SSL/TLS connections (MSTR, IMAP, POP3, etc.)if a valid certification is installed in server/conf/ssl/client.trustedservers keystore file.
ENGINE:
- new feature: z:encode and z:decode actions are implemented together with decode() and encode() system functions.
- new feature: mail:attachement has a new attribute called "inline" (auto/true/false). It sets whether the attachment is inline (e.g. image displayed in the mail body). When set to "auto", images are set to inline.
- new feature: new attribute in mstr:document and mstr:pdf - "embed-fonts". If set to "true", the used fonts will be embedded in the generated PDF. If set to "false", the fonts will not be embedded. By leaving this attribute empty or entering "documentsetting/reportsetting", the document/report setting will be used.
- new feature: "rowcnt" result attribute is added to z:head and z:tail actions
- new feature: "subscription-alias" attribute is added to zs:subscribe and zs:subscriptionlist actions.
- new feature: "mstr:getpromptanswer" has a new attribute called "xml" (true/false/all): whether to return the XML of the prompt answer ("true"), return the text answer ("false"), or return both ("all"). In the case of "all", both "value" and "idvalue" fields are returned. Currently false is implemented only for specific prompt types.
- new feature: "zs:cancel" has a new attribute called "status" - list of the states of jobs to be cancelled, separated by semicolons (";").
- new feature: "mstr:cachelist" has a new attribute called "type". It can define the type of the cache to filter (report, document, cube).
- new feature: "alias-global" common attribute is implemented. If specified, the result of the action will be stored in the given global variable.
- new feature: "result-attribute-global" common attribute is implemented. If specified, the result attributes of the action will be stored in the given global variable.
- new feature: "status" attribute is implemented in "z:exit" action. The intended status of the executed job can be set by this attribute (possible values: finished, error, cancelled).
- new feature: in "file:split" action "expected-column-count" can be either a number or "from-file" (in this case column count is determined based on the first line of the input file)
- update: serverIP is removed from the list of job variables, only serverHost id displayed in the job log. However, serverIP variable still can be used to preserve backward compatibility.
- update: the following error variables are available: errorMessage (old version: errormsg), stackTrace or errorTrace(old version: errortrace). They also work as result attributes. The old versions are still accessible due to compatibility reasons.
- update: '$' character can be escaped with '$$' in MSTR connection passwords (also on server side)
- update: in "mail:send" action "connection-name" is a required attribute
- update: status of jobs in "zs:joblist" and "zs:cancel" is changed. Possible values:
- finished
- queued
- cancelled
- error
- debugging
- running
- runningtimeout
- queuetimeout
- starting
- update: when using "file:split" action for data validation "folder" attribute is ignored
- bugfix: iPhones handle mail attachements correctly
- bugfix: "excel:data" action handles NULL values coming from a db:sql action correctly
- bugfix: rand() synthax is corrected ('rand' is also accepted for function call)
- bugfix: a folder cannod be moved into itself (file:move, zs:move) because it would cause metadatabase inconsistency
- bugfix: "copy-parameters" attribute of zs:copy works correctly
- bugfix: files are deleted from filesystem when "permanent=true" in zs:delete action
- bugfix: "rowcnt" result attribute of file:read action displays correct value when using "head" or "tail" attributes
- bugfix: "hide-unused-sheets" in excel:workbook works correctly
- bugfix: "mstr:dir" is able to list users with Windows Authentication without error. Warning in the job log: "mstrdir has an NT login, which cannot be read (MBNTVSUP.dll has not been loaded)"
- bugfix: when an existing subscription is edited with zs:subscribe or zs:setvariable (using zs:variable and/or zs:option) only the specified parameters/options will be changed.
- bugfix: excel workbooks created by Zagreus can be used as templates on linux machines as well
GUI:
- new feature: if a new script is saved with "Save as..." the target folder will be the active folder selected from "Zagreus browser panel"
- new feature: "INCL " prefix is added to the scrip label when a script is included by dragging onto the working area.
- new feature: "Caller" and "Caller type" columns can be displayed on "Finished jobs" panel. Filter conditions can be applied on these columns in "Finished jobs report parameters" dialog.
- update: When sending a new license key, there is a warning in the dialog: "Please, restart Zagreus server and worker-controller to apply all changes."
- update: The German version of License information has been corrected.
- update: the font type of "Resource name" in "Resource information" dialog has been changed to Courier.
- update: help content is updated in several actions (z:filter, z:join)
- bugfix: a folder cannod be moved into itself (right click, "Move selected resource...") because it would cause metadatabase inconsistency.
- bugfix: a new resource cannot be saved into the Recycle bin
- bugfix: Folder creation works in "Save resource as..." dialog
- bugfix: single quotes can be used in "Search for resources" dialog
- bugfix: 2 missing attributes are added to zs:migrate
- bugfix: search dialog shows all versions of the object that contain the search string
MONITOR:
- new feature: jobs can be filtered by execution mode (direct, scheduled, fired)
- update: In "Status panel" all checkboxes are active and checked. If "select all" is unchecked, all checkboxes will be unchecked as well.
- bugfix: bug related to displaying subscriptions in a range where trigger is missing is fixed
- bugfix: new subscriptions that are not triggered yet are displayed in monitor
MISC:
- new feature: a versatile HTML webpage is implemented that can start scripts (synchronously and asynchronously), fire events and display information about jobs (runtime information and log content). It can be accessed via:
http://zagreusserver:7323/zagreus/html/zagreus.html
- new feature: the hotfix updater is improved with the following features:
- the updater checks if the given zagreus path is correct
- the updater checks for running Zagreus processes, gives a warning if any of the related services is running and cancels the update process when a running service is found
- the user gets a warning that the metadata needs to be updated before installing the new hotfix (if needed)
- the metadata is updated automatically if needed (metadata version is checked automatically as well)
- error handling is implemented with informative error messages
- the following config files are updated with new or missing parameters automatically: conf.properties (server), worker-controller.properties, worker.properties. Backup is created automatically before modifying config files.
- new feature: the main configuration files (conf.properties, worker-controller.properties and worker.properties) can be tested if they contain any misconfigured or missing parameters. This can be done via GUI ("Server connection/Administrator options/Configuration testing...") or by starting a command-line script (configtester.bat on windows or configtester.sh on linux). The GUI function can check he configuration settings of the running Zagreus instance, but the command-line version checks the config files directly.
- new command-line script: connectedusers.bat (or .sh on linux) - lists information about the logged-in users
- new feature: administrative script are included in the hotfix installer (in administration folder). The needed scripts (in xml format) has to be imported manually.
- update (windows): status_zagreus.bat lists the running jobs and logged-in users as well. It displays only that mysqld process that is used by Zagreus.
- update (linux): "zagreus.sh -status" command lists logged-in users as well. It displays only that mysqld process that is used by Zagreus. Fixed when zagreus is not running as well.
- update: hotfix updater creates "zagreus/worker-controller/worker/temp" folder during update process if it doesn't exist
- update: MSTR 11.2.0 libraries are added to server and workers
- update: performing the following actions is not allowed on Windows shortcuts: rename, copy, move, delete (GUI and file actions)
- update: "zagreusjobs" mysql user is created (restricted to use only et_job_v view table). SQL queries in zagreus.sh and status_zagreus.bat are updated.
- update (linux): MYSQLPID variable in zagreus.sh is defined in a more general way with "ps" linux command
- bugfix: a deleted resource (that is in Recycle bin or deleted permanently) cannot be copied or moved (GUI, file:copy, file:move, zs:copy, zs:move)
- internal note: "show-connection-info" (true/false) hidden attribute is implemented. Default: false
- internal note: "et_generic-object" table is created in metadata
1.5.3.12 (2020-10-16)
SERVER:
ENGINE:
- new feature: LDAP:search has a new attribute called "object-filter"
- update: "expire" field in mstr:subscriptionlist result is a date data type, therefore it can be compared with date variables.
- bugfix: merging cells in excel sheet works correctly (e.g. if there is a confilct between merged cells in excel template and the merged cells in mstr report)
GUI:
MONITOR:
MISC:
1.5.3.11 (2020-05-21)
SERVER:
- new feature: mstr:connection can use the ID of the project (project-id attribute)
- new feature: mstr sessionID can be referred with ${mstr_connection.sessionid} in scripts when "connect-now" attribute is set to true in "mstr:connection".
ENGINE:
- new feature: mail:attachement has a new attribute called "inline" (auto/true/false). It sets whether the attachment is inline (e.g. image displayed in the mail body). When set to "auto", images are set to inline.
- new feature: z:variable has a new attribute: "scope=local/global"
- bugfix: iPhones handle mail attachements correctly
GUI:
MONITOR:
MISC:
1.5.3.10 (2020-04-15)
SERVER:
- new feature: There is a new feature in Zagreus, called "hidden jobs". With this feature specific jobs can be hidden both in Finished jobs and in Monitor. If job.monitoring is set to "false" in script options, the jobs are hidden. They can be displayed in GUI by checking "Show hidden jobs" checkbox in "Finished job report parameters" dialog. In Monitor these jobs can be displayed by checking "Show hidden jobs" checkbox on the main panel.
- bugfix: group policies are handled correctly (read, write, execute scripts in groups)
ENGINE:
- new action: z:do-while - Executes the enclosing content while the test condition is evaluated as true (but at least once). Execution can be stopped by calling action "z:break".
- new feature: file:split has a new attribute "row-separator", that specifies the row separator of the source file. Possible values: "any" (meaning either "\r", "\n" or "\r\n"), "\r\n", "\r", "\n"
- new feature: mstr:dir has a new attribute "distinct" (true/false). It specifies whether each object is returned only once (e.g. users can be present in several user groups). If set to true, from elements appearing multiple times, either the children of the "root" are kept, or those with the longest path.
- new function: capitalize() - Capitalizes the input text: the first letter of each word will be in upper case, while the rest will be in lower case
- update: mstr actions can handle shortcuts in MicroStrategy
- bugfix: mstr:dir action returns "owner" correctly
- bugfix: zip actions can handle cpassword
- bugfix: different versions of an object cannot be created with different names e.g. with zs:cretescript. Related error messages are fixed as well.
- bugfix: z:join raised "NullpointerException" error in some rare cases. It is fixed in this version. z:join also handles rigth outer join (A+=B) and left outer join (A=+B) when input data is imported with db:sql
- bugfix: mstr:report "async" attribute works as expected
GUI:
- new feature: resources in filesystem can be searched as well by ID or name. This feature is optional, filesystem can be excluded from the seaarch if there are performance issues.
- new feature: content search can be extended to text files in metadata. Filesystem can be included in content search as well. IMPORTANT NOTE: ON Windows PowerShell module must be enabled to perform content search in filesystem!
- new feature: in GUI help the example scripts can have descriptions
- new feature: with "action groups visibility" feature the different action groups can be displayed or hidden on the Palette, therefore the number of visible actions can be increased by hiding rarely used action groups. It can be set up in GUI Tools/Options/Palette.
- update: all pop-up windows are resizable (There were problems during remote sessions where Zagreus GUI was resized due to custom scaling factors.)
- update: zs:runscript action contains zs:variable by default when dragged to the workspace from palette
- bugfix: the files and folders in the filesystem are ordered alphabetically on linux Zagreus servers
- bugfix: creating a folder in "Save as..." dialog will not overwrite an existing resource with the same name
- bugfix: copying between two filesystems works correctly
- bugfix: in "Subscriptions" dialog when clicking on "Edit as new", the "Sript parameters" dialog shows script variables correctly
MONITOR:
- update: monitor performance is optimized for displaying huge amount of jobs.
MISC:
- update: the DB2 JDBC connector is updated to v4.26.14 which is compatible with v11.5 DB2 servers
- update: favicon and logo is updated in html files (zagreus/server/prog/html)
1.5.3.9 (2020-02-18)
SERVER:
- new feature: New system variable: currentActionNumber - The currently executed action ordering number.
ENGINE:
- new action: zs:runsubsciption - Runs a subscription on the Zagreus server.
-
new feature: mstr:document can export layouts separately or all in one by using the "layout" attribute. Only works for "excel" and "pdf" formats.
- layout=Layout1;Layout2 - only the specified layouts of the document will be exported as separate files
- layout=all - all possible layouts of the document will be exported as separate files
- layout=all-in-one - all possible layouts of the document will be exported in one file
- new feature: mstr actions (mstr:report, mstr:document, mstr:export, mstr:excel, mstr:pdf) can handle hierarchy prompts
- new feature: zs:migrate has a new attribute: copy-filesystem (true/false). It controls if the content of the filesystem folder would be migrated or not.
- new feature: when an error occurs or the running job is cancelled, the current action number is printed in the logfile regardless of the loglevel.
- new feature: file-split action has 2 new attributes: "input-header" and "include header" (see GUI help for more details). Furthermore, when "group-by" attribute is empty, it will only check for errors (written in the error file) in the input data. The correct data will be written into the specified target file (only if target-name is defined). Compound delimiters (e.g. "|;") are handled correctly.
- new feature: "null-format" common attribute is implemented which defines the format of the "null" elements in the result of the action. "_empty" refers to an empty string, otherwise the given text will be used. Default value is "".
- update: db:odbc-connection action is deprecated
- update: mstr:flash action is deprecated
- bugfix: mstr:setdescription handles reports as well and the incomplete log information is corrected as well
- bugfix: encoding of xml data types are handled corretly (e.g. in mstr:export and excel:workbook actions)
- bugfix: zip:dir will not hang if the zip file is empty
- bugfix: file:dir prints the correct id of a filesystem object
- bugfix: zs:migrate will handle filesystem objects correctly when using "source-id" attribute
GUI:
- new feature: in "Search for resources" dialog a new column is added: "Current" (possible values: yes/no). It shows if the resource in the result list is the current version or not.
- new feature: on "Script subscriptions" dialog "Run now" button is added that runs the selected subscription.
- update: opened resources cannot be moved to another location
- update: the version is included in the path of a versioned resource when using "Copy path"
- bugfix: if a resource is downloaded from GUI with "Download resource..." menu item, the filename of the downloaded resource will be correct
- bugfix: deleted resourced are not shown in results when using "Search for resources/Serch for ID"
MONITOR:
- new feature: the currenct action number is displayed in "Monitoring Variables" window
MISC:
- update: OpenJRE8 is added to zagreus/java. If you want to download it manually, please visit our support page: https://support.etixpert.com/zagreus/
- update: symbolic links pointing to "server/updater/hotfix_offline" folder are created in the root of Admin's filesystem. Hotfix zip archives can be upladed in that folder via GUI.
1.5.3.8 (2020-01-08)
SERVER:
ENGINE:
- update: file:dir action has 4 new fields in the result table providing information about the number of files and folders of the specified folder: filecnt, foldercnt, allfilecnt, allfoldercnt
GUI:
MONITOR:
MISC:
- bugfix: in hotfix package update_win.bat file is corrected to handle folders containing spaces (e.g. "C:\Program Files\zagreus")
1.5.3.7 (2019-12-30)
SERVER:
- new feature: the default worker group can be defined at user level as well. It can be configured in conf.properties. E.g. 'test' user will use worker group '1' in this example:
queue.user.test.queueid=1
- update: in linux version one line is added to zagreus/server/bin/server.sh file to fix possible write permission errors at startup:
-Djava.io.tmpdir=$ZAGREUS_SERVER_HOME/temp
ENGINE:
- new action: mstr:setdescription - Sets the description of a specified MSTR resource.
- update: file:write action handles both "lines" and "rowcnt" result attributes
- update: FOP and XSLT related libraries are updated in worker/lib/misc folder. Parallel executions with z:foreach run stable with the new libraries.
- update: zs:joblist "status" attribute can use the following values:
- finished
- queued
- cancelled
- error
- debugging
- running
- runningtimeout
- queuetimeout
- starting
- suspended
GUI:
- new feature: in "Tools/Options/General behaviour" menu there is a new parameter called "Scaling". The size of dialogs will be changed (weighted) according to this value (default: 100%). Furthermore, all pop-up dialogs are resizable.
MONITOR:
MISC:
1.5.3.6 (2019-10-18)
SERVER:
ENGINE:
- new action: mstr:objectinfo - Gives information about the specified MSTR resource.
GUI:
- update: Ctrl+A (Select All) is set up in the deployed Zagreus versions ("zagreus-all-v1.5.3.6-win.zip", "zagreus-clients-v1.5.3.6-win.zip").
NOTE: This update is not part of the hotfix, it has to be set up manually! To enable this funtcion in former GUI versions perform the following modifications:
1. Open GUI and press "Ctrl+Shift+L" 2 times! This will bring up the configuration dialog.
2. In the search box, type: "select"
3. You will see in the results ''Select All". Click on it, and for "When" option choose "Editing text" Then click on "OK".
MONITOR:
MISC:
1.5.3.5 (2019-09-25)
SERVER:
- update: z:documentation action is deprecated (also removed from GUI palette and context menu)
ENGINE:
- update: xml() function is renamed to xmltype()
- update: new attribute is added to psexec (misc action group). It is called: high_privileges (default: true, required to run remote applications from Zagreus service). Also error codes are handled correctly.
- bugfix: creating a new subscription (to a document) with mstr:subscrpition will not run the document automatically after creation
- bugfix: when templates are used, the ordinal numbers of the actions in the template will be referred as "Orig.id: n" in the log of the caller script
GUI:
MONITOR:
MISC:
1.5.3.4 (2019-09-05)
SERVER:
ENGINE:
- new variables: errorMessage (old version: errormsg), stackTrace (old version: errortrace). they also work as result attributes. The old versions are still accessible due to compatibility reasons.
- bugfix: when loading data from teradata to oracle the date value will be stored correctly as timestamp
GUI:
MONITOR:
MISC:
- update: Worker SSL keystore folder (worker-controller/worker/conf/ssl) is a symbolic link pointing to server SSL folder. This link is created during server startup on Linux (called in set_environment.sh on each startup) and during the installation of Worker-Controller service on Windows. If server/conf/ssl folder is not reachable (e.g. due to distributed configuration), an new ssl folder will be created with the initial keytores at the first startup of Zagreus. If the ssl folder or link already exists, it will not be overwritten.
This symbolic link can also be created manually on existing installations:
As a first step, rename the existing "zagreusinstall/worker-controller/worker/conf/ssl" folder to "ssl_old".
On Linux:
ln -s zagreusinstall/server/conf/ssl zagreusinstall/worker-controller/worker/conf/ssl
On Windows:
mklink /J "c:\Programme\zagreus\worker-controller\worker\conf\ssl" "c:\Programme\zagreus\server\conf\ssl"
- update: zagreus.sh script has been updated in linux version. Usage: ./zagreus.sh [start/stop/forcestop/restart/status] Note: run 'chmod +x zagreus.sh' to make it executable!
1.5.3.3 (2019-08-27)
NEW LICENSE KEY IS REQUIRED IN ORDER TO USE NEW MSTR ACTION GROUPS!
SERVER:
- new action group: LDAP (new actions: ldap:connection, ldap:search, ldap:test) License needs to be updated in order to acces this action group!
- bugfix: if an old version of a script is deleted, the subscription will remain intact
ENGINE:
- bugfix: fixing some formatting bugs in excel:workbook
GUI:
- update: if we drag&drop a file or object from Zagreus browser to an attribute of an action, version will not be included in the path
- update: "scrip parameters" are renamed to "script variables"
MONITOR:
MISC:
- update: new license key for LDAP action group is needed
- update: actions of MSTR REST action group are renamed:
mstrrest:connection, mstrrest:close, mstrrest:createcube, mstrrest:header, mstrrest:pushdate. License needs to be updated in order to acces this action group!
- new feature: windows authentication can be used in SQL Server connections.
connection-string: jdbc:sqlserver://SERVERNAME\INSTANCENAME:PORT;databaseName=TESTDB;integratedSecurity=true
Hotfix changes:
1.5.3.2 (2019-07-31)
SERVER:
- new feature: When performing parallel execution with z:foreach, the id of the actual thread can be accessed by the inner variable "parallelThreadId".
- new feature: Job ID and starting variables are displayed at the top of job log files.
ENGINE:
- new function: xml() - Returns an XML type from the input text.
- bugfix: all KAFKA data types (string, number, time, date, record) are handled correcty.
- bugfix: fixing some formatting bugs in excel:workbook
GUI:
MONITOR:
MISC:
- new feature: default queueid can be defined in config.properties (queue.default.queueid).
- update: new SQLITE jdbc jars are added in db folders. Setting up connection:
Domain=sqlite
Driver=org.sqlite.JDBC
Connection string=jdbc:sqlite:c:\sqlitedbfile.db
Server=localhost
Port, username and password is not required!
1.5.3.1 (2019-07-11)
SERVER:
ENGINE:
- bugfix: zs:backup throws an error if output cannot be produced or its size is 0 bytes
GUI:
MONITOR:
MISC:
1.5.3.0 (2019-06-28)
NEW LICENSE KEY IS REQUIRED IN ORDER TO USE NEW MSTR ACTION GROUPS!
SERVER:
- new feature: Zagreus can connect to an MSTR Intelligence Server (both MSTR 10.x and 11.x) via SSL protocol, if the certification is installed in the keystore of Zagreus server and worker. mstr:connection action has a new attribute "ssl" (true/false).
- new feature: new system variables are presented
$callerName
$callerType
$callerIP
$executionMode
$subscriptionId
$startingVariables
- new action group: MSTR REST (new actions: mstr:createcube, mstr:header, mstr:pushdata, mstr:rest-close, mstr:rest-connection)
- new action group: KAFKA (new actions: kafka:connection, kafka:consume, kafka:produce, kafka:seek, kafka:list-topics)
- update: due to upgrading to Java 8, to use SSL connection between Zagreus server and clients the following line has to be updated in server conf.properties:
ssl.listener.cipher-suites=SSL_RSA_WITH_RC4_128_MD5,SSL_RSA_WITH_RC4_128_SHA,SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
ENGINE:
- bugfix: file:split won't throw an error if error-filename attribute is empty
- bugfix: z:difference handles simple text input with several lines corretly
GUI:
MONITOR:
- bugfix: "client.key and "client.trustedservers" were missing from monitor/conf folder. If configuration folders are located on a shared network drive, these files have to be copied in "conf" folder if secure connection is needed.
MISC:
- update: Zagreus runs on Java 1.8 due to compatibility reasons with MSTR2019
1.5.2.8 (2019-03-22)
SERVER:
- new feature: additional holidays can be defined in bankholidays.txt file for workingdayofmonth() function. See conf.properties for further details
- bugfix: a script cannot be subscribed to an already deleted schedule (moved to recycle bin) with zs:subscribe.
- bugfix: script description is saved correctly when using different versions
- bugfix: renaming files in filesystem works correctly
ENGINE:
- new action: zs:getskippedjobs - Gives a detailed list of the skipped jobs.
- new action: z:difference - Generates the (set-like) difference of the result of subcontents; i.e. the result will contain those elements of the first subcontent which are not present in the second one.
- new action: z:intersection - Generates the (set-like) intersection of the result of subcontents.
- new action: file:split - Writes the lines of the input file into several files, based on the content of their specific columns.
- new feature: mstr:user action has a new attribute: trusted-login. It defines the trused-login name for the specific user.
- new feature: db:call action has a new attribute: "dbms_output". If set to true, the output of the call will be put into the result attribute "dbms_output". Works only for Oracle-type DBMS.
- update: in zs:resourceinfo "resourcename" is changed to "name" and "resourceid" is changed to "id" in the result table.
- bugfix: comparison ('=' and '<>') works correctly when using date and boolean data types
GUI:
- new feature: when a new version of a resource is saved, the description can be added directly in the "Set resource version" dialog.
- new feature: displayed jobs in the "Finished jobs" tab are limited to 1000 by default. It can be configured in "Setting report parameters" dialog.
- new feature: xlsx (and xls) files can be opened on client side with external application (e.g. MS Excel). Can be set up in GUI/Options...
- bugfix: the description of different script versions is saved correctly
MONITOR:
MISC:
- update: the linux version of Zagreus is started/stopped/restarted by zagreus.sh script. Status also can be cheked with this script. Check Installation and configuration manual for further information.
- update: administrative scripts has been updated. The new scripts with installation instructions are available on the support webpage.
- update: external config folders can be specified for GUI and MONITOR clients. E.g. if Zagreus is deployed to the users in a centralized manner, the configuration folders can be located on a shared network drive. Note that GUI and MONITOR cannot share the same configuration folder. Please place them different subfolders e.g. c:/config/gui and c:/config/monitor. Also, write permission issues can be avoided related to "Program Files folder". For further instructions see the comment section of "startgui" and "startmonitor" .bat files. Important: in case of monitor all content of the original "conf" folder (zagreus/monitor/conf/*) must be copied to this new external config folder!
1.5.2.7 (2019-01-5)
SERVER:
ENGINE:
- bugfix: zip:read action handles passwords correcly
- bugfix: mstr:export rowcnt result attribute shows correct value
- bugfix: db:load Teraddata works with JDBC and database name can be specified in two ways: 1. dbname.tablename in table attribute or 2. connection string ":DATABASE=databasename"
- bugfix: mail:send action can embed images in the mail body correctly. The attached image can be referenced as
- bugfix: zs:migrate action throws a more informative error message, if the target folder is missing
- update: if test-expr is evaluated to false, the following message is printed into the log: "Attribute "test-expr" evaluated to false, skipping action"
- update: attribute "name" is displayed in the result_attribute list of mstr:connection action
GUI:
MONITOR:
MISC:
- update: Teradata drivers are upgraded to version 16.20.00.10
1.5.2.6 (2018-10-30)
SERVER:
ENGINE:
- new action: file:split
- new feature: fop:transform action can create png images. configuration file is installed in worker/conf/fop.xconf
- bugfix: for DB database connection "Result set is closed" error fixed
- bugfix: FTP connection can be reused in the same script after closing it
GUI:
MONITOR:
MISC:
- update: FOP drivers are upgraded to version 2.3
1.5.2.5 (2018-08-23):
SERVER:
- new feature: server uptime is displayed in 'Server information' panel
- new feature: 'priority balancing algorithm' is implemented. If this feature is enabled in the server, each time a new job is added to the queue, the priority value of all other queued jobs is decreased by 1 (lowest priority value is 0). This algorithm balances the queue, therefore all jobs will reach the running state, even if there were script with lower priority. It can be turned on/off in GUI/Administrator options/'Start/Stop server components' and also with zs:servercontrol action (command=set-use-priority-algorithm). Default is "Off". Note that this feature slows down the performance of the server when there are many jobs in the queue, so it is recommended to use it when it is needed.
- bugfix: copying/moving versioned resources is working correctly
- bugfix: if a version of a script is in the recycle bin, it won't appear again if the current version of the script is moved to another folder
ENGINE:
- new feature: there is a new attribute for zs:delete called "permanent". When it's true (and recycle bin is enabled), the resource will skip recycle bin and will be deleted permanently. Default: false
- update: when zs:migrate finds the specified resource in a different folder on the target server, it will delete the resource on target side and migrate the object in the defined target folder from the source server
- bugfix: test-expr handles boolean comparison correctly
- bugfix: zs:filter handles correctly all column names used in zs:joblist
- bugfix: db:load handles execution=false attribute correctly (correct INSERT INTO values)
- bugfix: datepart function (used with "hour" filter) was incorrect due to AM/PM system
GUI:
- update: the MSTR actions are divided into 2 action groups on the palette: MSTR Administration and MSTR Reporting
- bugfix: script version is displayed correctly in the header of the text editor
MONITOR:
MISC:
1.5.2.4 (2018-07-27):
METADATA NEEDS TO BE UPDATED!
SERVER:
- new feature: Recycle bin-Deleted resources in metadata are placed in recycle bin, so they can be recovered if needed.
- new feature: Zagreus version is displayed at the top of job log files
ENGINE:
- new action: db:load - Inserts data rows into the specified table of the target connection. It can handle various source-data elements, like: db:sql, excel:read or z:parse.
- new action: mstr:cancel - Cancels the execution of one or more MicroStrategy jobs.
- new acion: zs:emptyrecyclebin - Makes the server side recycle bin empty.
- new feature: 'filename' attribute in file:dir action can interpret wildcard for filtering filenames. e.g. list only *.txt or profit_* files
- new feature: datepart(date-part-text, date) function. e.g. datepart('year', '2018-02-13') will give back 2018
- update: zs:backup returns the name of the created backup file
- bugfix: continue and break statements are handled correctly
- bugfix: multiple prompts can be handled by mstr:report/mstr:pdf actions
- bugfix: in z:variable action monitor=true/false attribute works as expected
- bugfix: zs:setvariable overwrites script variables
- bugfix: scheduleid, schedulename and schedulepath variables are filled for event schedules as well
- bugfix: test-experession is evaluated first. if it is false, other attributes won't be evaluated
GUI:
- update: "Active logs" tabs close automatically only after 10-second delay, not immediately
- update: when opening an MSTR connection in GUI, all folders will be shown (e.g. My Personal Objects, etc.)
- update: 'error-name' attribute is emtpy by default in z:on-error action
- bugfix: secure connection works for both local and remote Zagreus servers. Default port is 8443 (configurable in conf.properties)
- bugfix: password is not required for testing connections with "Test connection"
- bugfix: "Rename resource..." menu item is disabled for Users and Groups. They can be renamed correctly by using "Modify user/group" menu item (Right click on the specific User/Group)
MONITOR:
- update: timeout threshold is increased in Monitor, due to regular loss of connection
MISC:
1.5.2.3 (2018-03-08):
SERVER:
- new feature: new configurable parameter is implemented: queue.skippedjobs.threshold tells the time (in milliseconds) threshold when a job should be marked as "skipped" in monitor in case of delayed running. Eg. if a script is scheduled to run at 12:00:00 but it only starts at 12:00:04 (due to high server load), it won't marked as skipped in monitor. Default: 5 seconds
- update: server/group/user variables are resolved in connections (also when using 'Test connection' in GUI)
- bugfix: server/group/user variables are used correctly
ENGINE:
- new feature: no-parse-text common attribute introduced
- new feature: file:dir has a new attribute called 'filename', that can interpret wildcard to filter the result list. E.g.: 'filename=*.txt' will list only the files ending with .txt
- update: file:dir lists simple files if needed
- update: in zs action group, if 'connection-name' attribute is empty, 'localhost' will be used by default.
- bugfix: file:move, zs:move sets subfolder fullpath's correctly. Subscription schedule paths are correct after renaming parent folder of a schedule
- bugfix: z:raise raises an error, even if error-name attribute is empty
GUI:
- new feature: show relating objects... works for files, folders, time schedules and events too in gui
- new feature: keep alive signals are sending for push connections (active logs, active jobs, worker-controller logs) for long idle times
- new feature: fit to content (all parents) in graph editor (gui)
- update: 10 seconds time limit is introduced for 'Test connection'
- update: using different icons for subscribed / subscribed but only inactive / not subscribed scripts in GUI
- update: the limit for xml text size in GUI is increased to 32KB
- update: when a script is moved to a filesystem folder, related subscriptions are deleted
- update: GUI help for "common attributes" group
- bugfix: if an object in the file browser is dragged onto the working area, the z:include's filename attribute won't contain the version of the object if there are no other versions, or if it's the current version
MONITOR:
- new feature: saveable params in Tools / Options
- update: new color codes for subscription types, grouping is more straightforward
- bugfix: can go back to the past
- bugfix: canceled jobs look the correct size in the time chart
- bugfix: if a long running script is cancelled, the runtime is rendered correctly in the monitor
- bugfix: Monitor connects even if there is an inconsistent subscription in the database
MISC:
- update: in workercontroller.properties if workercontroller.defaultworkercount is set to -1, only one worker will be started. If server is also started, then the number of workers will be increased to the allowed worker count defined in the license.
1.5.2.2 (2018-02-02):
METADATA NEEDS TO BE UPDATED!
SERVER:
- new feature: if a script or a schedule that is a part of a subscription is deleted, there is a dependency warning before deletion.
- bugfix: fixing bug that caused "Duplicate entry" error message in server log
- bugfix: when a scheduled script is deleted, it won't disappear in the monitor
- bugfix: user-variable caused problems related to user password
- bugfix: overwriting scripts or schedules that are supbscribed is working as expected
- bugfix: modifying user/group description changes the user/group home folder description as expected.
- bugfix: user/group description is preserved during migration
- bugfix: if a job is skipped, after enabling the scheduler (within 30 seconds) the job won't run
- bugfix: renaming a resource will update 'last modification time' properly
ENGINE:
- new action: zs:migrate-user-group implemented
- new feature: new attributes are implemented for zs:migrate: keep-dates=true/false and recursive=true/false
- update: zs:setscheduleactivation action is removed (zs:servercontrol can be used to activate/deactivate scheduler)
- bugfix: zs:migrate will preserve file sizes between Windos and Linux servers (new jar files are added to worker lib)
GUI:
- update: Zagreus browser is refreshed automatically after renaming a resource
- update: Finished job list will only refresh by clicking on view header when auto refresh is on
- bugfix: gui refresh finished job triggered by clicking on the header works correctly for longer lists as well
- bugfix: removing a script from subscription won't hide all other subscribed scripts in the list
MONITOR:
- new feature: 'shifting table' instead of 'expand table' is implemented
- bugfix: empty lines are removed immediately from monitor
- bugfix: disconnections are solved
- bugfix: deleted schedules, deleted events does not make the monitor crash
- bugfix: schedules that are not created from gui (zs:createresource, copy/paste from gui, file:copy, zs:copy schedule or whole folders) are visible correctly in monitor
- bugfix: schedules, scripts deleted by file:delete triggers the subscription delete flag correctly
- bugfix: deleting folders also works for subscription delete flag
- bugfix: if two clients (or more) are connected from the same IP, the monitor will show all clients correctly
MISC:
1.5.2.1 (2018-01-15):
METADATA NEEDS TO BE UPDATED!
SERVER:
- bugfix: schedule versioning is forbidden
ENGINE:
- new action: z:for action is implemented
- new feature: zip:dir new attriube: details
- new feature: zip:dir can handle large file (more than 2 GB)
- new feature: common attribute: action-attributes can be used to reach action attribute values
- bugfix: fixing z:tail bug related to arrays
GUI:
- new feature: crontime definition is checked when saved from the gui
- new feature: current date appears in date filters as default in Finished jobs panel
- new feature: time schedule cannot be saved if the format is incorrect
- bugfix: "contain" operator appears in the filter for scriptname
MONITOR:
- bugfix: monitor handles time event related subscriptions and jobs
MISC:
- new feature: mysql.log and mysql.err are created during startup if they do not exist. Logs are appended with timestamp in these logfiles
1.5.2.0 (2017-12-08):
SERVER:
ENGINE:
- new feature: zs:migrate logs currently processed file
- new feature: "foundbom" and "encoding" result attributes for file:Readline, file:read
- new feature: zs:filter handles 'LIKE' operator
- new feature: excel:read handles date formats
- bugfix: switch statement minor bug is fixed
GUI:
- new feature: gui finished jobs view new attribute: priority
- new feature: zagreus "Test connection" is implemented
- new feature: finished jobs window can be set by no job-id requested
- new feature: tooltip for report condition date format, dialog boxes are larger
- new feature: subscription list is ordered by schedule name
- new feature: script parameters window is modal
- new feature: variable window is modal
- new feature: subscription creating loads default parameters
- new feature: different schedule versions are shown in list for subscriptions
- new feature: finished jobs does not show "invisible" result message
- update: splash screen updated
- bugfix: after creating a crontime schedule with non-admin user, and try to subscribe a script, now the newly created crontime schedule shows in the list
MONITOR:
MISC:
1.5.1.3 (2017-12-01)
METADATA NEEDS TO BE UPDATED!
SERVER:
- new feature: Zagreus can connect to Exasol database with JDBC protocol. The following connection string has to be used:
jdbc:exa:{HOST}:{PORT};schema={DB}
ENGINE:
- new feature: keep-id attribute is shown in zs:migrate. It keeps folder id-s as well.
- new feature: zs:migrate is working for users / groups. (source-name="/users/test", target-folder-name="/users").
- new feature: zs:migrate new attribute: only-content for special cases. (source-name="/users/test", target-folder-name="/users/other_user", only-content="true").
- new feature: zs:migrate has result-attribute: zs_migrate.migratedresources
- new feature: file:read, file:readline, file:write and file:writeline encoding handling. file:read only uses its own encoding attribute, file:readline gets it from file:connection,
file:write and file:writeline can use it from both places specified. (UTF related attribute values: UTF-8, UTF-16, UTF-32, UTF-16LE, UTF-16BE, UTF-32LE, UTF-32BE)
- new feature: BOM autodetect for file read actions
- new feature: file:write bom=true/false attribute
- bugfix: zs:subscribe and zs:schedule didin't work, if the schedule-id was set without version. Now it works with or without version, if it is not specified, it uses the current version.
- bugfix: fixing zs:getschedules action bug
GUI:
MONITOR:
MISC:
1.5.1.2 (2017-09-22):
SERVER:
- bugfix: binary and text files are copied correctly between two servers
ENGINE:
- bugfix: encoding problems in file:eof and file:neof
GUI:
- bugfix: all checkboxes were empty near the list of subscriptions, althoug there were actrive subscriptions
MONITOR:
MISC:
1.5.1.1 (2017-08-30):
SERVER:
ENGINE:
- new action: zs:migrate: new action is implemented to copy resources between servers with advanced version handling features
GUI:
- bugfix: script parameters are also copied with the script when copying between two servers
MONITOR:
MISC:
1.5.1.0 (2017-06-13):
METADATA NEEDS TO BE UPDATED!
SERVER:
- new feature: schedule system is replaced with "subscription system". related actions are also implemented (zs:subscriptionlist, zs:szbscribe, zs:unsubscribe)
ENGINE:
- new feature: action numbers are displayed in logs
- new feature: enhancing mstr:report by using header format defined in the MSTR report
- update: adjusting mstr:user action to be compatible with MSTR 10.5
- update: z:exit is not catched by z:on-error
- update: cells in excel are merged based on the MSTR report setting
- bugfix: fixing character encoding problem in excel:read action
- bugfix: fixing bug related to javamail lib (problems with connecting to Exchange servers)
GUI:
- new feature: order of parameters is preserved for script parameters
- new feature: new GUI help is displayed (right click on actions)
- new feature: tooltips are displayed for system variables and functions
- update: search results are ordered by scriptname in GUI
MISC:
- new feature: Zagreus metadata can be restored from zip archives (restoredatabase.bat/restoredatabase.sh). Usage:
restoredatabase.bat path_to_zipfile
- update: temporary files are deleted from worker-controller/worker/temp directory after using excel:workbook action (streaming=true)
1.5.0.10 (2016-11-29):
SERVER:
- update: the driver of Microsoft SQL connection has to be defined as follows:
domain: sqlserver
driver: com.microsoft.sqlserver.jdbc.SQLServerDriver
or as connection-string: jdbc:sqlserver://exampledomain.com:portnumber
ENGINE:
- new feature: new attribute implemented for mail:getmsg action: header=true/false (gets header content, default=false)
- update: zs:backup enhancement: it can handle both system and Zagreus paths
- bugfix: mail:send bug is fixed (unnecessary ":" was appeared in the mail body)
GUI:
MONITOR:
- bugfix (monitor): monitor zooming problem is fixed (indocator didn't show up, when end_execution_time was e.g. 14:59:56)
MISC:
1.5.0.9 (2016-10-20):
SERVER:
ENGINE:
- update: improving webservice action group with embedded wsdl actions
GUI:
MONITOR:
MISC:
1.5.0.8 (2016-10-14)
SERVER:
- bugfix: user autorun scripts is working
- new feature: new string function is implemented: reverse(text)
- new feature: engine.maxrunning or job.max_running_time script parameters are implemented
- new feature: queue.runningtimeout parameter added to conf.properties
- new feature: engine.maxparallelexecution works from conf.properties as universal setting
ENGINE:
- new feature: zs:userlist action
GUI:
- bugfix: saving new resource into collapsed tree item in Zagreus browser view is working
MONITOR:
- new feature: logged in users in monitor
MISC:
1.5.0.7 (2016-09-30)
SERVER:
- new feature: subscription system implementation (server side)
- new feature: queued jobs can be canceled
ENGINE:
- new actions: z:head, z:tail, z:reverse
- update: zs:runscript sync mode throws an error if the called script is not finished status
GUI:
- new feature: GUI script variables keeping their order
MONITOR:
- bugfix: monitor double lines fixed
- bugfix: monitor refresh schedule info working correctly
MISC:
1.5.0.6 (2016-09-15)
SERVER:
- new feature: job.max_queuing_time is used as individual script option to set queue timeout
- bugfix: restart workers / cancel jobs on some systems caused java.rmi collapse. It is fixed now.
ENGINE:
- update: zs:runscript sync call throws error on queue-timeout of the called script
GUI:
- update: GUI finished jobs window filters by begin queue time per default, so that it would show queue-timeout jobs as well
MONITOR:
- update: Monitor shows script name + version
- bugfix: Monitor freezing fixed when clicking on queue-timeout job
1.5.0.5 (2016-09-06)
SERVER:
- update: Server rewrites port number is wsdl-s if needed
ENGINE:
- bugfix: zs:createresource handles windows .lnk paths correctly
GUI:
- new feature: GUI finished jobs window refresh can be set to mouse click on the header / table
- new feature: Runtime info dialog can open logs for result jobs
- update: Save as... on existing resource keeps the old id.
MONITOR:
MISC:
1.5.0.4 (2016-08-31)
SERVER:
ENGINE:
- new action: z:return is implemented
- update: parallel MSTR connections are closed at the end of the script
- update: zs:getlaststatus date formats are adjustable
- bugfix: zs:jobinfo bug fixed.
- bugfix: zs:getlaststatus fields are correctly filled
- bugfix: zs:jobinfo bugs corrected
- bugfix: excel:read was not working when the source excel file was created with streaming=true
- bugfix: MSTR required promps are handled correctly
MONITOR:
- bugfix: bug with non-admin rights error handling fixed
GUI:
- update: gui plugin jar follows versioning, also, about menu shows correct versioning info
- bugfix: gui perspective switching is working for opened editors
- bugfix: gui error messages show properly
MISC:
- new feature: the workers will be restarted if a certain memory limit is reached. it can be set in worker.properties.
- update: updater updates server/prog/html folder as an addition
- update: updater updates gui/configuration/config.ini as an addition
- update: new oracle jdbc jars are added in db folders
1.5.0.3 (2016-06-15)
SERVER:
ENGINE:
- new action: mstr:fireevent
- new action: zs:setschedulesactivation
- new action: zs:getlaststatus implementation in engine.
- new feature: engine.maxparallelexecution is implemented
- update: empty variables can be concatenated to existing variables (the result was an empty string before this hotfix)
- update: zs:getvariable returns a table with 3 columns: name, value, type(variable, option)
- bugfix: fixed character encoding problem in excel:read action (when using xlsx)
- bugfix: fixed bug in mstr:getpromptanswer
- bugfix: in mstr:subscription
- bugfix: files couldn't be deleted with zs:delete from filesystem after using zs:copy
GUI:
- new feature: in GUI the search results can be exported as text file (resurce id, path, name)
- new feature: tooltips for System variables and System functions in Variable Window in GUI.
- update: in GUI multiple elements can be selected for commenting/uncommenting
- bugfix: fixed bug with test connection and wrong password
MONITOR:
- new feature: the monitor shows the parent job id if the script was run by zs:runscript. Also, a new button for showing the parent job dialog.
- bugfix: monitor bug fixed with double lines of scheduled script
MISC:
1.5.0.2 (2016-03-08)
SERVER:
- bugfix: Ftp minor bug fixes with unfilled port numbers in connection
ENGINE:
GUI:
MONITOR:
MISC:
- bugfix: Fixed bugs with multiple workergroups and occassional concurrent hashmap handling exception
1.5.0.1 (2016-01-15)
Initial release of Zagreus 1.5, Windows, Unix/Linux, Unix/Solaris (SPARC)