fortinet.fortios.fortios_report_layout – Report layout configuration in Fortinet’s FortiOS and FortiGate.

Note

This plugin is part of the fortinet.fortios collection (version 2.1.3).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install fortinet.fortios.

To use it in a playbook, specify: fortinet.fortios.fortios_report_layout.

New in version 2.10: of fortinet.fortios

Synopsis

  • This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify report feature and layout category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.0.0

Requirements

The below requirements are needed on the host that executes this module.

  • ansible>=2.9.0

Parameters

Parameter

Comments

access_token

string

Token-based authentication. Generated from GUI of Fortigate.

enable_log

boolean

Enable/Disable logging for task.

Choices:

  • no ← (default)

  • yes

member_path

string

Member attribute path to operate on.

Delimited by a slash character if there are more than one attribute.

Parameter marked with member_path is legitimate for doing member operation.

member_state

string

Add or delete a member under specified attribute path.

When member_state is specified, the state option is ignored.

Choices:

  • present

  • absent

report_layout

dictionary

Report layout configuration.

body_item

list / elements=string

Configure report body item.

chart

string

Report item chart name.

chart_options

string

Report chart options.

Choices:

  • include-no-data

  • hide-title

  • show-caption

column

integer

Report section column number.

content

string

Report item text content.

description

string

Description.

drill_down_items

string

Control how drill down charts are shown.

drill_down_types

string

Control whether keys from the parent being combined or not.

hide

string

Enable/disable hide item in report.

Choices:

  • enable

  • disable

id

integer / required

Report item ID.

img_src

string

Report item image file name.

list

list / elements=string

Configure report list item.

content

string

List entry content.

id

integer / required

List entry ID.

list_component

string

Report item list component.

Choices:

  • bullet

  • numbered

misc_component

string

Report item miscellaneous component.

Choices:

  • hline

  • page-break

  • column-break

  • section-start

parameters

list / elements=string

Parameters.

id

integer / required

ID.

name

string

Field name that match field of parameters defined in dataset.

value

string

Value to replace corresponding field of parameters defined in dataset.

style

string

Report item style.

table_caption_style

string

Table chart caption style.

table_column_widths

string

Report item table column widths.

table_even_row_style

string

Table chart even row style.

table_head_style

string

Table chart head style.

table_odd_row_style

string

Table chart odd row style.

text_component

string

Report item text component.

Choices:

  • text

  • heading1

  • heading2

  • heading3

title

string

Report section title.

top_n

integer

Value of top.

type

string

Report item type.

Choices:

  • text

  • image

  • chart

  • misc

cutoff_option

string

Cutoff-option is either run-time or custom.

Choices:

  • run-time

  • custom

cutoff_time

string

Custom cutoff time to generate report [hh:mm].

day

string

Schedule days of week to generate report.

Choices:

  • sunday

  • monday

  • tuesday

  • wednesday

  • thursday

  • friday

  • saturday

description

string

Description.

email_recipients

string

Email recipients for generated reports.

email_send

string

Enable/disable sending emails after reports are generated.

Choices:

  • enable

  • disable

format

list / elements=string

Report format.

Choices:

  • pdf

max_pdf_report

integer

Maximum number of PDF reports to keep at one time (oldest report is overwritten).

name

string / required

Report layout name.

options

list / elements=string

Report layout options.

Choices:

  • include-table-of-content

  • auto-numbering-heading

  • view-chart-as-heading

  • show-html-navbar-before-heading

  • dummy-option

page

dictionary

Configure report page.

column_break_before

list / elements=string

Report page auto column break before heading.

Choices:

  • heading1

  • heading2

  • heading3

dictionary

Configure report page footer.

list / elements=string

Configure report footer item.

string

Report item text content.

string

Description.

integer / required

Report item ID.

string

Report item image file name.

string

Report item style.

string

Report item type.

Choices:

  • text

  • image

string

Report footer style.

header

dictionary

Configure report page header.

header_item

list / elements=string

Configure report header item.

content

string

Report item text content.

description

string

Description.

id

integer / required

Report item ID.

img_src

string

Report item image file name.

style

string

Report item style.

type

string

Report item type.

Choices:

  • text

  • image

style

string

Report header style.

options

list / elements=string

Report page options.

Choices:

  • header-on-first-page

  • footer-on-first-page

page_break_before

list / elements=string

Report page auto page break before heading.

Choices:

  • heading1

  • heading2

  • heading3

paper

string

Report page paper.

Choices:

  • a4

  • letter

schedule_type

string

Report schedule type.

Choices:

  • demand

  • daily

  • weekly

style_theme

string

Report style theme.

subtitle

string

Report subtitle.

time

string

Schedule time to generate report [hh:mm].

title

string

Report title.

state

string / required

Indicates whether to create or remove the object.

Choices:

  • present

  • absent

vdom

string

Virtual domain, among those defined previously. A vdom is a virtual instance of the FortiGate that can be configured and used as a different unit.

Default: “root”

Notes

Note

  • Legacy fortiosapi has been deprecated, httpapi is the preferred way to run playbooks

Examples

- collections:
  - fortinet.fortios
  connection: httpapi
  hosts: fortigate01
  vars:
    ansible_httpapi_port: 443
    ansible_httpapi_use_ssl: true
    ansible_httpapi_validate_certs: false
    vdom: root
  tasks:
  - name: fortios_report_layout
    fortios_report_layout:
      vdom: root
      state: present
      report_layout:
        cutoff_option: run-time
        cutoff_time: 00:00
        day: sunday
        email_send: disable
        format: pdf
        max_pdf_report: 31
        name: terr-test-rdmstr
        options: include-table-of-content
        schedule_type: daily
        style_theme: terr-test-rdmstr
        time: 00:00

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

build

string

Build number of the fortigate image

Returned: always

Sample: “1547”

http_method

string

Last method used to provision the content into FortiGate

Returned: always

Sample: “PUT”

http_status

string

Last result given by FortiGate on last operation applied

Returned: always

Sample: “200”

mkey

string

Master key (id) used in the last call to FortiGate

Returned: success

Sample: “id”

name

string

Name of the table used to fulfill the request

Returned: always

Sample: “urlfilter”

path

string

Path of the table used to fulfill the request

Returned: always

Sample: “webfilter”

revision

string

Internal revision number

Returned: always

Sample: “17.0.2.10658”

serial

string

Serial number of the unit

Returned: always

Sample: “FGVMEVYYQT3AB5352”

status

string

Indication of the operation’s result

Returned: always

Sample: “success”

vdom

string

Virtual domain used

Returned: always

Sample: “root”

version

string

Version of the FortiGate

Returned: always

Sample: “v5.6.3”

Authors

  • Link Zheng (@chillancezen)

  • Jie Xue (@JieX19)

  • Hongbin Lu (@fgtdev-hblu)

  • Frank Shen (@frankshen01)

  • Miguel Angel Munoz (@mamunozgonzalez)

  • Nicolas Thomas (@thomnico)