1+ // Copyright (c) 2017, 2025, Oracle and/or its affiliates. All rights reserved.
2+ // Licensed under the Mozilla Public License v2.0
3+
4+ /*
5+ * This example shows how to manage log analytics lookup resource
6+ */
7+
8+ variable "tenancy_ocid" {}
9+ variable "user_ocid" {}
10+ variable "fingerprint" {}
11+ variable "private_key_path" {}
12+ variable "compartment_ocid" {}
13+ variable "region" {}
14+
15+ provider "oci" {
16+ tenancy_ocid = var. tenancy_ocid
17+ user_ocid = var. user_ocid
18+ fingerprint = var. fingerprint
19+ private_key_path = var. private_key_path
20+ region = var. region
21+ }
22+
23+ # Fetch namespace name from object store GET /n
24+ data "oci_objectstorage_namespace" "ns" {
25+ compartment_id = var. compartment_ocid
26+ }
27+
28+ // Create a simple lookup
29+ resource "oci_log_analytics_namespace_lookup" "TFLookup" {
30+ compartment_id = var. tenancy_ocid
31+ namespace = data. oci_objectstorage_namespace . ns . namespace
32+ lookup_name = " TFLookup"
33+ type = " Lookup"
34+ register_lookup_file = " ./files/vendor.csv"
35+
36+ description = " A simple lookup"
37+ char_encoding = " UTF-8"
38+ is_hidden = false
39+ freeform_tags = {" servicegroup" = " test" , " Dept" = " Devops" }
40+ defined_tags = {" Oracle-Recommended-Tags.ResourceAuthorizedUser" = " test" }
41+ }
42+
43+ # Create a simple lookup with tags
44+ resource "oci_log_analytics_namespace_lookup" "TFLookupWithTags" {
45+ compartment_id = var. tenancy_ocid
46+ namespace = data. oci_objectstorage_namespace . ns . namespace
47+ lookup_name = " TFLookupWithTags"
48+ type = " Lookup"
49+ register_lookup_file = " ./files/vendor.csv"
50+
51+ description = " A simple lookup with tags"
52+ freeform_tags = {" servicegroup" = " test" , " Dept" = " Devops" }
53+ defined_tags = {" Oracle-Recommended-Tags.ResourceAuthorizedUser" = " test" }
54+ }
55+
56+ # Create a simple lookup with all attributes like categories and fields
57+ resource "oci_log_analytics_namespace_lookup" "TFLookupAll" {
58+ compartment_id = var. tenancy_ocid
59+ namespace = data. oci_objectstorage_namespace . ns . namespace
60+ lookup_name = " TFLookupAll"
61+ type = " Lookup"
62+ register_lookup_file = " ./files/vendor.csv"
63+
64+ description = " A simple lookup with all attributes"
65+ freeform_tags = {" servicegroup" = " test" , " Dept" = " Devops" }
66+ defined_tags = {" Oracle-Recommended-Tags.ResourceAuthorizedUser" = " test" }
67+
68+ char_encoding = " UTF-8"
69+ default_match_value = " WILDCARD"
70+ is_hidden = false
71+ max_matches = 25
72+
73+ categories {
74+ name = " database"
75+ type = " TIER"
76+ }
77+
78+ categories {
79+ name = " oracle"
80+ type = " VENDOR"
81+ }
82+
83+ fields {
84+ name = " name"
85+ match_operator = " WILDCARD"
86+ }
87+
88+ fields {
89+ name = " profitmodel"
90+ match_operator = " WILDCARD"
91+ }
92+
93+ lifecycle {
94+ ignore_changes = [
95+ fields , defined_tags
96+ ]
97+ }
98+ }
99+
100+ # Append data to a lookup
101+ resource "oci_log_analytics_namespace_lookups_append_data_management" "appendData" {
102+ namespace = data. oci_objectstorage_namespace . ns . namespace
103+ lookup_name = oci_log_analytics_namespace_lookup. TFLookup . lookup_name
104+ append_lookup_file = " ./files/append.csv"
105+
106+ depends_on = [oci_log_analytics_namespace_lookup . TFLookup ]
107+ }
108+
109+ # Update data of a lookup
110+ resource "oci_log_analytics_namespace_lookups_update_data_management" "updateData" {
111+ namespace = data. oci_objectstorage_namespace . ns . namespace
112+ lookup_name = oci_log_analytics_namespace_lookup. TFLookup . lookup_name
113+ update_lookup_file = " ./files/update.csv"
114+
115+ depends_on = [oci_log_analytics_namespace_lookups_append_data_management . appendData ]
116+ }
117+
118+ # Get details of a lookup
119+ data "oci_log_analytics_namespace_lookup" "BEALookup" {
120+ namespace = data. oci_objectstorage_namespace . ns . namespace
121+ lookup_name = " omc_beaerrmsgs"
122+ }
0 commit comments