{% extends "base_generic.html" %} {% block pagetitle %}Import Activity Log Entries{% endblock %} {% block content %}
Activity log

Import entries

Bring a CSV export into an activity log. Existing entries with matching identifiers are updated; new rows are added.

{% if initial_log %} Back to log {% else %} Operation logs {% endif %}
{% if logs %}
{% csrf_token %}
Import source

Choose import source

Pick the log that will receive these entries, then select its CSV file.

{% if initial_log %}

Opened from {{ initial_log.name }}.

{% endif %}
{% if initial_log %} Cancel {% else %} Cancel {% endif %}
{% else %}

No operation logs available

Create an operation log before importing entries from a CSV file.

Create Log
{% endif %}
CSV reference

Prepare the export

Use an export from Ghostwriter when possible; it already carries the expected header and timestamp shape.

Required headers

entry_identifier, start_date, end_date, source_ip, dest_ip, tool, user_context, command, description, output, comments, operator_name, tags

entry_identifier may be empty or unique. An optional extra_fields column accepts a JSON object keyed by extra-field internal name.

Timestamp format

Use YYYY-MM-DD HH:MM:SS for start_date and end_date, matching a Ghostwriter export.

Include a timezone offset such as +00:00. Without one, Ghostwriter uses the server timezone ({{ TIME_ZONE }}).

{% endblock %} {% block morescripts %} {% endblock %}