5.1 Creating and Using Field Aliases

Key Takeaways

  • A field alias is a search-time knowledge object that assigns an alternate, normalized name to an existing extracted or default field without modifying the original data on disk.
  • Field aliasing retains the original field; both the original field name and the alias coexist simultaneously in search results and can be queried interchangeably in SPL.
  • Multiple aliases can be assigned to a single original field (one-to-many), and multiple different source fields across various sourcetypes can map to the same standardized alias name (many-to-one).
  • Field aliases are configured in Splunk Web under Settings > Fields > Field aliases or on the filesystem in props.conf using the FIELDALIAS-<class> directive.
  • Field aliases serve as the primary foundational mechanism for Splunk Common Information Model (CIM) normalization, enabling uniform searches across heterogeneous log sources.
Last updated: August 2026

5.1 Creating and Using Field Aliases

In enterprise Splunk environments, machine data streams in from hundreds of heterogeneous technologies—firewalls, web proxies, operating systems, cloud providers, and custom applications. While these systems frequently record identical logical data points (such as client IP addresses, usernames, or HTTP status codes), each technology vendor labels these data points using different field names. For example, a Palo Alto Networks firewall logs client IP addresses as src, an Apache web server logs them as clientip, a Microsoft IIS server logs them as c-ip, and an AWS VPC Flow log records them as srcaddr.

Without a standardized naming mechanism, analysts would be forced to write cumbersome, error-prone searches containing extensive boolean logic (e.g., src=10.0.0.1 OR clientip=10.0.0.1 OR c-ip=10.0.0.1 OR srcaddr=10.0.0.1). Field aliases solve this operational challenge by providing an alternate, standardized name for an existing extracted or default field at search time without altering the raw, immutable event data on disk.

Mastering field alias mechanics, configuration workflows in Splunk Web, underlying props.conf syntax, and their role in the Splunk Common Information Model (CIM) is a core competency tested on the Splunk Core Certified Power User examination.


1. Architectural Definition & Fundamentals of Field Aliases

A field alias is a search-time knowledge object that establishes an alternative identifier for a field that has already been extracted or defined as a default indexed field. When Splunk processes an event containing an aliased field, it makes the field available under both its original extracted name and its newly assigned alias name.

+-----------------------------------------------------------------------------------+
|                         FIELD ALIAS IN-MEMORY MAPPING                             |
+-----------------------------------------------------------------------------------+
| Raw Log Event (Palo Alto Firewall):                                               |
|   timestamp="2026-08-24T12:00:01" src=192.168.1.100 dst=10.0.0.50 proto=TCP       |
+-----------------------------------------------------------------------------------+
                                          │
               Search-Time Field Extraction (Stage 1 in Pipeline)
                                          │
                                          ▼
| Extracted Fields:                                                                 |
|   src = 192.168.1.100                                                             |
|   dst = 10.0.0.50                                                                 |
|   proto = TCP                                                                     |
+-----------------------------------------------------------------------------------+
                                          │
                 Field Alias Processing (Stage 2 in Pipeline)
                 `FIELDALIAS-palo_ip = src AS src_ip dst AS dest_ip`                 
                                          │
                                          ▼
| Final Discovered Event Fields (Coexisting in Memory):                             |
|   src = 192.168.1.100       AND   src_ip  = 192.168.1.100   <-- (Both available!) |
|   dst = 10.0.0.50           AND   dest_ip = 10.0.0.50       <-- (Both available!) |
|   proto = TCP                                                                     |
+-----------------------------------------------------------------------------------+

Core Operational Characteristics of Field Aliases:

  1. Dual Coexistence (Non-Destructive): Aliasing does not rename, overwrite, or delete the original field. Both the original field name (e.g., src) and the alias name (e.g., src_ip) exist simultaneously in search head memory for every matching event.
  2. Search-Time Evaluation: Field aliases are evaluated dynamically during search execution at Stage 2 of Splunk's search-time field discovery pipeline (immediately after field extractions and before calculated fields). They do not alter raw indexed data (_raw) or TSIDX files on disk.
  3. Bidirectional Search Interoperability: Users can filter, group, chart, or transform data using either the original field name or the alias name interchangeably in SPL searches.
  4. Prerequisite Dependency: A field alias cannot extract data from _raw text directly; it can only reference a field that has already been extracted (via index-time fields, default fields like host/source/sourcetype, or search-time extractions defined via EXTRACT or REPORT).
  5. Zero Storage Overhead: Because field aliases are computed in memory at search time, creating dozens of aliases introduces zero additional disk storage consumption on indexers.

2. Step-by-Step UI Configuration Walkthrough in Splunk Web

Power Users frequently create and manage field aliases directly within Splunk Web. Understanding the exact navigation path, form fields, and permission toggles is essential for the exam.

+-----------------------------------------------------------------------------------+
|              SPLUNK WEB NAVIGATION: CREATING A FIELD ALIAS                         |
+-----------------------------------------------------------------------------------+
| [Settings] ➔ [Fields] (under Knowledge category) ➔ [Field aliases]                |
| ➔ Click [New Field Alias] Button                                                  |
+-----------------------------------------------------------------------------------+

Step-by-Step Creation Process:

  1. Navigate to Settings > Fields in the top navigation bar of Splunk Web.
  2. Click Field aliases to open the Field Aliases management table.
  3. Click the green New Field Alias button in the upper right corner.
  4. Complete the configuration form with the following required parameters:
    • Destination app: Select the Splunk application context in which this alias will reside (e.g., search, Splunk_TA_cisco-asa, or a custom organizational app).
    • Name: Enter a descriptive, unique stanza name for this alias definition (e.g., cisco_asa_ip_normalization or pan_traffic_field_aliases). This name acts as the identifier in configuration files.
    • Apply to: Select the data source category to which the alias applies by choosing one of three radio buttons: host, source, or sourcetype (most commonly sourcetype).
    • named: Enter the exact name of the host, source, or sourcetype (or a wildcard expression like cisco:asa:* or access_*).
    • Field Aliases Mappings: Define one or more field alias pairs:
      • In the left text box (Existing field name), enter the original extracted field name (e.g., c_ip).
      • In the right text box (New field alias name), enter the desired target alias name (e.g., src_ip).
      • Click Add another alias to define additional field mappings within the same configuration stanza (e.g., s_ip to dest_ip, cs_username to user).
  5. Click Save.
+-----------------------------------------------------------------------------------+
|                   SPLUNK WEB FIELD ALIAS CONFIGURATION MODAL                      |
+-----------------------------------------------------------------------------------+
| Destination app:  [ Search & Reporting (search)                         ▼ ]       |
| Name:             [ cisco_firewall_aliases                                ]       |
| Apply to:         ( ) host    ( ) source    (•) sourcetype                        |
| named:            [ cisco:asa                                             ]       |
|                                                                                   |
| Field Aliases:                                                                    |
|   Existing field name             New field alias name                            |
|   [ src_ip_addr          ]  --->  [ src_ip                 ]   [ - Delete ]       |
|   [ dst_ip_addr          ]  --->  [ dest_ip                ]   [ - Delete ]       |
|   [ dport                ]  --->  [ dest_port              ]   [ - Delete ]       |
|   [ + Add another alias ]                                                         |
|                                                                                   |
|                                              [ Cancel ]  [ Save (Green Button) ]  |
+-----------------------------------------------------------------------------------+

Knowledge Object Scoping & Permissions Management

When initially created in Splunk Web, a field alias defaults to Private scope (accessible only to the user who created it). To make the alias usable by other analysts or dashboards:

  1. On the Field aliases management page, locate the newly created alias stanza.
  2. Under the Sharing column, click Permissions.
  3. In the Permissions dialog:
    • Select This app only to share the alias with all users within the current application.
    • Select All apps (Global) to make the alias available across all applications on the search head (mandatory for Common Information Model add-ons).
    • Configure Read and Write role permissions (e.g., granting Read to * [Everyone] and Write to power and admin roles).
  4. Click Save.

3. Configuration File Engineering: props.conf

On the Splunk Enterprise filesystem, field aliases are stored exclusively in props.conf. Power Users must be able to read, write, and troubleshoot props.conf alias directives.

Directory Hierarchy & Storage Paths

Depending on the permission scope assigned in Splunk Web, field aliases are persisted in the following filesystem locations:

  • User-Private Scope: $SPLUNK_HOME/etc/users/<username>/<app_name>/local/props.conf
  • App-Specific Scope: $SPLUNK_HOME/etc/apps/<app_name>/local/props.conf
  • System Global Scope: $SPLUNK_HOME/etc/apps/<app_name>/local/props.conf accompanied by an export entry in $SPLUNK_HOME/etc/apps/<app_name>/metadata/local.meta (export = system)

Stanza Syntax Rules for FIELDALIAS

[<spec>]
FIELDALIAS-<class_name> = <orig_field_name> AS <alias_field_name> [<orig_field_name2> AS <alias_field_name2> ...]

Syntax Breakdown:

  • [<spec>]: The configuration stanza defining where the alias applies. Can be a [sourcetype], [source::<source_pattern>], or [host::<host_pattern>].
  • FIELDALIAS-: The mandatory Splunk keyword prefix identifying the attribute as a field alias definition.
  • <class_name>: A unique descriptive identifier for the alias rule within the stanza (e.g., FIELDALIAS-cisco_ips or FIELDALIAS-web_fields). If multiple FIELDALIAS- directives are defined under the same stanza, each must have a unique <class_name> suffix; otherwise, subsequent entries with identical class names overwrite earlier ones.
  • <orig_field_name>: The existing extracted or indexed field name. Field names are strictly case-sensitive.
  • AS: The case-insensitive keyword linking the original field to the alias name.
  • <alias_field_name>: The new target alias field name. If the alias name contains spaces or special symbols, it should be wrapped in quotes.
  • Multiple Alias Mappings: A single FIELDALIAS-<class_name> line can contain multiple space-separated <orig> AS <alias> pairs.

Production props.conf Examples

# Example 1: Web Access Logs Normalization
[access_combined]
FIELDALIAS-web_cim = clientip AS src_ip status AS http_status bytes AS bytes_out uri_path AS uri

# Example 2: Cisco ASA Firewall Normalization
[cisco:asa]
FIELDALIAS-cisco_network = src_ip AS src dst_ip AS dest dport AS dest_port sport AS src_port
FIELDALIAS-cisco_auth = user AS src_user target_user AS user

# Example 3: Windows Security Event Log Normalization
[source::WinEventLog:Security]
FIELDALIAS-winevent_auth = TargetUserName AS user WorkstationName AS src_host IpAddress AS src_ip

The AS vs. ASNEW Keyword Distinction

While AS is the standard keyword used in Splunk Web and most props.conf configurations, Splunk also supports ASNEW in configuration files:

  • AS (Default): Unconditionally maps the original field to the alias field name. If the alias field name already existed in the event from a prior extraction, AS replaces its value with the aliased value.
  • ASNEW: Conditionally creates the alias field only if the alias field name does not already exist in the event or is null. If the target field already contains a value, ASNEW preserves the pre-existing value and does not overwrite it.
[sourcetype_custom]
# Overwrites dest_ip if dest_ip was already extracted
FIELDALIAS-force_ip = destination_address AS dest_ip

# Only sets dest_ip if dest_ip is not already populated
FIELDALIAS-safe_ip = backup_dest_address ASNEW dest_ip

4. Multi-Source Normalization & The Common Information Model (CIM)

The primary enterprise use case for field aliases is achieving data normalization across disparate data sources in compliance with the Splunk Common Information Model (CIM). The CIM defines standardized, vendor-neutral field names for common operational and security domains (such as Network Traffic, Authentication, Web, and Endpoint).

The Enterprise Normalization Challenge

Consider a corporate network where three different firewall vendors protect different network segments. Each vendor emits logs with different field names for source and destination IP addresses, ports, and actions:

Data Source / VendorSource IP FieldDest IP FieldSource PortDest PortAction FieldProtocol Field
Palo Alto Networks (pan:traffic)srcdstsportdportaction (allow/deny)proto
Cisco ASA (cisco:asa)src_ipdest_ipsrc_portdest_portvendor_action (permitted/denied)protocol
Check Point (cp_log)orig_srcorig_dsts_portd_portact (accept/drop)ipproto
AWS VPC Flow (aws:cloudwatch:vpcflow)srcaddrdstaddrsrcportdstportaction (ACCEPT/REJECT)protocol
Standardized CIM Targetsrc_ip / srcdest_ip / destsrc_portdest_portactiontransport

Normalization via props.conf Field Aliases

By creating field alias stanzas for each sourcetype, a Splunk administrator or Power User maps each vendor's proprietary fields to the standardized CIM field names:

# Palo Alto Networks Field Aliases
[pan:traffic]
FIELDALIAS-pan_cim = src AS src_ip dst AS dest_ip sport AS src_port dport AS dest_port proto AS transport

# Check Point Field Aliases
[cp_log]
FIELDALIAS-cp_cim = orig_src AS src_ip orig_dst AS dest_ip s_port AS src_port d_port AS dest_port act AS action ipproto AS transport

# AWS VPC Flow Logs Field Aliases
[aws:cloudwatch:vpcflow]
FIELDALIAS-aws_cim = srcaddr AS src_ip dstaddr AS dest_ip srcport AS src_port dstport AS dest_port protocol AS transport

The Result: Unified, Technology-Agnostic SPL Queries

Once these aliases are configured and shared globally, a security analyst can search across all firewall technologies simultaneously using a single, elegant SPL query without knowing or caring which vendor generated which log:

index=firewall (action=deny OR action=denied OR action=drop OR action=REJECT)
| stats count by src_ip, dest_ip, dest_port, transport
| where count > 100
| sort - count
+-----------------------------------------------------------------------------------+
|                     NORMALIZED MULTI-VENDOR SEARCH RESULTS                        |
+-----------------------------------------------------------------------------------+
| src_ip          dest_ip         dest_port   transport   count                     |
| 192.168.1.105   10.0.0.50       443         tcp         14,230  (from Palo Alto)  |
| 172.16.4.22     10.0.0.80       22          tcp          8,412  (from Cisco ASA)  |
| 10.200.1.9      10.0.0.12       3389        tcp          3,105  (from Check Point)|
| 192.168.10.4    10.0.0.99       53          udp          1,840  (from AWS VPC)    |
+-----------------------------------------------------------------------------------+

5. Search Behavior & Query Execution Comparison

Understanding how field aliases behave across various SPL commands is critical for building performant searches and avoiding subtle analysis errors.

1. Filtering in the Base Search Clause

When an alias is defined, searching by either the original field name or the alias name in the base search retrieves the exact same set of events:

`-- These two searches return the identical event count:`
index=web clientip=192.168.1.50
index=web src_ip=192.168.1.50

2. Transforming and Statistical Commands (stats, chart, timechart)

When grouping by an aliased field in transforming commands, Splunk aggregates results under the specified field name:

`-- Aggregating by the alias name`
index=web
| stats count, sum(bytes) as total_bytes by src_ip

In the resulting statistics table, the column header will be named src_ip. If you grouped by clientip, the column header would be named clientip. Both produce identical numerical aggregations.

3. Streaming Commands (eval, where, table, fields)

Because both original and aliased fields exist in the event record, downstream streaming commands can reference either field name freely:

index=web
| eval is_internal = if(cidrmatch("10.0.0.0/8", src_ip), "Internal", "External")
| table _time, clientip, src_ip, is_internal, http_status

In the output table, both clientip and src_ip will display identical IP address values for every row.

4. Wildcard Searches on Aliased Fields

Wildcard filtering behaves consistently across aliased fields. Searching src_ip=192.168.* matches all events where clientip begins with 192.168..


6. Advanced Mapping Patterns & Rules

Power Users must understand the nuances of complex mapping architectures:

Pattern 1: One-to-Many Aliasing (1-to-N)

A single original field can be aliased to multiple distinct target field names simultaneously. This is common when an enterprise schema requires both a generic field name and a domain-specific field name:

[cisco:asa]
# Aliasing 'c_ip' to both 'src_ip' (CIM Network Traffic) and 'client_ip' (Legacy Reports)
FIELDALIAS-multi_ip = c_ip AS src_ip c_ip AS client_ip c_ip AS ip_address

Result: An event with c_ip=10.1.1.1 will simultaneously possess c_ip, src_ip, client_ip, and ip_address in memory.

Pattern 2: Many-to-One Normalization (N-to-1)

Multiple different fields from different sourcetypes can map to the identical standardized alias name. This is the bedrock of CIM normalization demonstrated in Section 4.

Pattern 3: Case-Sensitivity Rules

In Splunk SPL and configuration files:

  • Configuration Stanza Identifiers & Class Names: Case-insensitive in lookup but conventionally lowercase.
  • Field Names (Original and Alias): Strictly case-sensitive. If the extracted field is SourceIP, defining FIELDALIAS-test = sourceip AS src_ip will fail because sourceip does not match SourceIP.
  • Keyword AS / ASNEW: Case-insensitive (AS, as, and As execute identically in props.conf).

7. Common Exam Traps & Best Practices

  1. The Field Destruction Trap:

    • Exam Trap: A question asks: "After configuring FIELDALIAS-web = clientip AS src_ip, what happens to the field clientip in search results?"
    • Fact: clientip is NOT deleted or renamed. Both clientip and src_ip are present in search results.
  2. The Non-Existent Extraction Trap:

    • Exam Trap: An administrator defines an alias for a field that has not been extracted from _raw.
    • Fact: Field aliases cannot parse raw text. If the original field is not extracted by Stage 1, the alias evaluates to null.
  3. The Calculated Field Alias Trap:

    • Exam Trap: Attempting to create a field alias for a calculated field (e.g., aliasing total_mb produced by an EVAL- expression).
    • Fact: Field aliases (Stage 2) execute before calculated fields (Stage 3). A field alias cannot alias a calculated field.
  4. Syntax Direction Inversion Trap:

    • Exam Trap: Writing FIELDALIAS-test = src_ip AS clientip when intending to alias clientip to src_ip.
    • Fact: The syntax is strictly <existing_field> AS <new_alias_name>.
Test Your Knowledge

A Splunk Power User configures the following field alias in props.conf for web server logs: [access_combined] FIELDALIAS-ip_norm = clientip AS src_ip When an analyst runs the search index=web sourcetype=access_combined | table _time, clientip, src_ip, what appears in the resulting table?

A
B
C
D
Test Your Knowledge

In Splunk Web, where does a Power User navigate to create and manage search-time field aliases?

A
B
C
D
Test Your Knowledge

An enterprise indexes firewall traffic from two different vendors. Vendor A logs the source IP address as src_addr, while Vendor B logs it as c_ip. An analyst wants to write a single search: index=firewall | stats count by src_ip. Which configuration correctly normalizes both sourcetypes in props.conf?

A
B
C
D