{"id":33407,"date":"2025-11-02T13:31:46","date_gmt":"2025-11-02T10:31:46","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/"},"modified":"2025-11-02T13:31:46","modified_gmt":"2025-11-02T10:31:46","slug":"new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/","title":{"rendered":"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi"},"content":{"rendered":"<p><body><\/p>\n<p>\n        Log verileri g\u00fcn\u00fcm\u00fcz modern uygulamalar\u0131n\u0131n g\u00f6zlemlenebilirli\u011fi i\u00e7in hayati \u00f6neme sahip olsa da, bu verilerin y\u00f6netimi giderek karma\u015f\u0131k ve maliyetli hale gelebilir. Gereksiz veya d\u00fc\u015f\u00fck de\u011ferli loglar\u0131n birikmesi, sadece depolama ve i\u015fleme maliyetlerini art\u0131rmakla kalmaz, ayn\u0131 zamanda kritik bilgilerin g\u00f6zden ka\u00e7mas\u0131na neden olan bir \u201cveri g\u00fcr\u00fclt\u00fcs\u00fc\u201d yarat\u0131r. \u0130\u015fte bu noktada, New Relic kullan\u0131c\u0131lar\u0131 i\u00e7in eski usul Drop Kurallar\u0131ndan, daha esnek ve g\u00fc\u00e7l\u00fc Pipeline Cloud Kurallar\u0131na Terraform ile ge\u00e7i\u015f yapmak, hem operasyonel verimlili\u011fi art\u0131rman\u0131n hem de maliyetleri optimize etmenin anahtar\u0131d\u0131r. Bu rehber, ge\u00e7i\u015f s\u00fcrecini ad\u0131m ad\u0131m a\u00e7\u0131klayacak ve Terraform&#8217;un g\u00fcc\u00fcn\u00fc kullanarak bu d\u00f6n\u00fc\u015f\u00fcm\u00fc nas\u0131l otomatikle\u015ftirebilece\u011finizi g\u00f6sterecektir.\n    <\/p>\n<p>\n        Log y\u00f6netimi, sistemlerinizin ve uygulamalar\u0131n\u0131z\u0131n sa\u011fl\u0131\u011f\u0131n\u0131, performans\u0131n\u0131 ve g\u00fcvenli\u011fini anlamak i\u00e7in vazge\u00e7ilmez bir disiplindir. New Relic gibi platformlar, milyarlarca log olay\u0131n\u0131 toplayarak bu devasa veri y\u0131\u011f\u0131n\u0131n\u0131 anlaml\u0131 i\u00e7g\u00f6r\u00fclere d\u00f6n\u00fc\u015ft\u00fcrmemizi sa\u011flar. Ancak, her log sat\u0131r\u0131 e\u015fit derecede de\u011ferli de\u011fildir. G\u00fcr\u00fclt\u00fcl\u00fc veya fazla ayr\u0131nt\u0131l\u0131 loglar, hem analiz s\u00fcre\u00e7lerini yava\u015flat\u0131r hem de bulut maliyetlerini gereksiz yere art\u0131r\u0131r. Bu sorunu \u00e7\u00f6zmek i\u00e7in New Relic, loglar\u0131 al\u0131m noktas\u0131nda filtrelememizi sa\u011flayan mekanizmalar sunar. Bu mekanizmalar\u0131n ba\u015f\u0131nda &#8220;Drop Kurallar\u0131&#8221; gelmekteydi, ancak teknoloji geli\u015ftik\u00e7e yerini daha geli\u015fmi\u015f &#8220;Pipeline Cloud Kurallar\u0131&#8221;na b\u0131rakm\u0131\u015ft\u0131r.\n    <\/p>\n<h3>New Relic Drop Kurallar\u0131 Nelerdir ve Neden De\u011fi\u015fim Gerekiyor?<\/h3>\n<p>\n        New Relic Drop Kurallar\u0131, platforma g\u00f6nderilen log verilerini, belirli kriterlere g\u00f6re daha veri al\u0131m a\u015famas\u0131nda filtreleyerek d\u00fc\u015f\u00fcrmenize (drop etmenize) olanak tan\u0131yan bir \u00f6zelliktir. Temel amac\u0131, gereksiz loglar\u0131n New Relic&#8217;e ula\u015fmas\u0131n\u0131 engelleyerek hem veri hacmini azaltmak hem de i\u015fleme ve depolama maliyetlerinden tasarruf etmektir. Genellikle basit anahtar kelime e\u015fle\u015fmeleri veya temel d\u00fczenli ifade (RegEx) desenleri kullanarak \u00e7al\u0131\u015f\u0131r ve &#8220;log i\u00e7eri\u011finde &#8216;DEBUG&#8217; kelimesi ge\u00e7iyorsa bu logu d\u00fc\u015f\u00fcr&#8221; gibi kurallar tan\u0131mlaman\u0131za izin verir.\n    <\/p>\n<p>\n        Tarihsel olarak, Drop Kurallar\u0131 bir\u00e7ok organizasyon i\u00e7in \u00f6nemli bir maliyet optimizasyon arac\u0131 olmu\u015ftur. Ancak zamanla, bu kurallar\u0131n baz\u0131 s\u0131n\u0131rlamalar\u0131 ortaya \u00e7\u0131kt\u0131:\n    <\/p>\n<ul>\n<li><strong>S\u0131n\u0131rl\u0131 Esneklik:<\/strong> Drop Kurallar\u0131 genellikle yaln\u0131zca loglar\u0131n d\u00fc\u015f\u00fcr\u00fclmesine odaklanm\u0131\u015ft\u0131r. Loglar\u0131 d\u00f6n\u00fc\u015ft\u00fcrme, zenginle\u015ftirme veya farkl\u0131 hedeflere y\u00f6nlendirme gibi daha geli\u015fmi\u015f i\u015flemler i\u00e7in yeterli yetene\u011fe sahip de\u011fillerdi.<\/li>\n<li><strong>Y\u00f6netim Zorlu\u011fu:<\/strong> Kurallar\u0131n say\u0131s\u0131 artt\u0131k\u00e7a, karma\u015f\u0131k RegEx&#8217;ler ve \u00e7ak\u0131\u015fan filtreler nedeniyle y\u00f6netimleri zorla\u015fabiliyordu. \u00d6zellikle b\u00fcy\u00fck \u00f6l\u00e7ekli altyap\u0131larda, hangi kural\u0131n ne yapt\u0131\u011f\u0131n\u0131 takip etmek zahmetli hale geliyordu.<\/li>\n<li><strong>Terraform Entegrasyonu Eksikli\u011fi:<\/strong> Drop Kurallar\u0131 genellikle New Relic UI \u00fczerinden manuel olarak y\u00f6netiliyordu. Bu durum, &#8220;Infrastructure as Code&#8221; (IaC) yakla\u015f\u0131mlar\u0131na uyumsuzluk g\u00f6steriyor, de\u011fi\u015fiklik y\u00f6netimini ve versiyonlamay\u0131 zorla\u015ft\u0131r\u0131yordu. Otomasyon eksikli\u011fi, hatalara a\u00e7\u0131k ve tekrarlanabilirli\u011fi d\u00fc\u015f\u00fck bir s\u00fcre\u00e7 yarat\u0131yordu.<\/li>\n<li><strong>Ba\u011flam Eksikli\u011fi:<\/strong> Loglar\u0131 d\u00fc\u015f\u00fcrme karar\u0131, genellikle logun kendisindeki belirli bir desenle s\u0131n\u0131rl\u0131yd\u0131. Logun kayna\u011f\u0131, uygulamas\u0131 veya di\u011fer meta verileri gibi ba\u011flamsal bilgileri kullanarak daha ak\u0131ll\u0131 kararlar almak zordu.<\/li>\n<\/ul>\n<p>\n        Bu s\u0131n\u0131rlamalar, New Relic&#8217;i daha g\u00fc\u00e7l\u00fc, esnek ve otomasyona uyumlu bir log i\u015fleme mekanizmas\u0131na y\u00f6neltti: Pipeline Cloud Kurallar\u0131.\n    <\/p>\n<h3>Pipeline Cloud Kurallar\u0131 Nedir ve Hangi Avantajlar\u0131 Sunar?<\/h3>\n<p>\n        New Relic Pipeline Cloud Kurallar\u0131, log y\u00f6netimini bir sonraki seviyeye ta\u015f\u0131yan modern ve merkezi bir yakla\u015f\u0131md\u0131r. Bunlar sadece loglar\u0131 d\u00fc\u015f\u00fcrmekle kalmaz, ayn\u0131 zamanda onlar\u0131 d\u00f6n\u00fc\u015ft\u00fcrme, zenginle\u015ftirme, y\u00f6nlendirme ve hatta birden fazla kural\u0131 birle\u015ftirerek karma\u015f\u0131k i\u015f ak\u0131\u015flar\u0131 olu\u015fturma yetene\u011fi sunar. Pipeline Cloud Kurallar\u0131, New Relic Log Management&#8217;\u0131n ayr\u0131lmaz bir par\u00e7as\u0131d\u0131r ve veri al\u0131m\u0131ndan nihai depolamaya kadar log ak\u0131\u015f\u0131n\u0131n her a\u015famas\u0131n\u0131 kontrol etmenizi sa\u011flar.\n    <\/p>\n<p>\n        Sundu\u011fu ba\u015fl\u0131ca avantajlar \u015funlard\u0131r:\n    <\/p>\n<ul>\n<li><strong>Geli\u015fmi\u015f Filtreleme ve D\u00f6n\u00fc\u015ft\u00fcrme:<\/strong> Pipeline Kurallar\u0131, loglar\u0131 sadece d\u00fc\u015f\u00fcrmekle kalmaz, ayn\u0131 zamanda belirli alanlar\u0131 ay\u0131klama, yeniden bi\u00e7imlendirme, hassas verileri maskeleme veya loglara ek meta veriler ekleme gibi \u00e7ok daha karma\u015f\u0131k i\u015flemler yapabilir. \u00d6rne\u011fin, bir logdaki IP adresini \u00e7\u0131kar\u0131p yeni bir alan olarak ekleyebilir veya bir hata mesaj\u0131n\u0131 daha okunabilir bir hale getirebilirsiniz.<\/li>\n<li><strong>Merkezi Y\u00f6netim ve G\u00f6rselle\u015ftirme:<\/strong> T\u00fcm kurallar tek bir yerden y\u00f6netilir ve log ak\u0131\u015f\u0131 \u00fczerinde ger\u00e7ek zamanl\u0131 etkileri g\u00f6zlemlenebilir. Bu, sorun gidermeyi ve kural optimizasyonunu kolayla\u015ft\u0131r\u0131r.<\/li>\n<li><strong>Terraform Entegrasyonu:<\/strong> En \u00f6nemli avantajlardan biri, Pipeline Cloud Kurallar\u0131n\u0131n New Relic&#8217;in API&#8217;si arac\u0131l\u0131\u011f\u0131yla tam olarak y\u00f6netilebilir olmas\u0131d\u0131r. Bu, Terraform gibi Infrastructure as Code (IaC) ara\u00e7lar\u0131yla tam entegrasyon anlam\u0131na gelir. Kurallar\u0131 kod olarak tan\u0131mlayabilir, versiyon kontrol sistemlerinde saklayabilir ve CI\/CD s\u00fcre\u00e7leriyle otomatik olarak da\u011f\u0131tabilirsiniz. Bu, de\u011fi\u015fikliklerin g\u00fcvenli, tekrarlanabilir ve denetlenebilir olmas\u0131n\u0131 sa\u011flar.<\/li>\n<li><strong>Maliyet Optimizasyonu ve Geli\u015fmi\u015f Observability:<\/strong> Gereksiz loglar\u0131 etkin bir \u015fekilde filtreleyerek veya d\u00fc\u015f\u00fck de\u011ferli loglar\u0131 d\u00f6n\u00fc\u015ft\u00fcrerek maliyetleri \u00f6nemli \u00f6l\u00e7\u00fcde d\u00fc\u015f\u00fcrebilirsiniz. Ayn\u0131 zamanda, yaln\u0131zca anlaml\u0131 ve eyleme ge\u00e7irilebilir loglar\u0131n saklanmas\u0131, genel g\u00f6zlemlenebilirlik kalitesini art\u0131r\u0131r ve anormalliklerin daha h\u0131zl\u0131 tespit edilmesine yard\u0131mc\u0131 olur.<\/li>\n<li><strong>\u00c7oklu Ko\u015fullar ve S\u0131ralama:<\/strong> Birden fazla e\u015fle\u015fme ko\u015fulu tan\u0131mlayabilir ve bu kurallar\u0131n hangi s\u0131rada uygulanaca\u011f\u0131n\u0131 belirleyebilirsiniz. Bu, daha karma\u015f\u0131k i\u015f mant\u0131klar\u0131n\u0131 ve veri i\u015fleme senaryolar\u0131n\u0131 destekler.<\/li>\n<\/ul>\n<p>\n        A\u015fa\u011f\u0131daki tablo, iki yakla\u015f\u0131m aras\u0131ndaki temel farklar\u0131 \u00f6zetlemektedir:\n    <\/p>\n<table>\n<thead>\n<tr>\n<th>\u00d6zellik<\/th>\n<th>New Relic Drop Kurallar\u0131<\/th>\n<th>New Relic Pipeline Cloud Kurallar\u0131<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Temel \u0130\u015flev<\/td>\n<td>Yaln\u0131zca loglar\u0131 d\u00fc\u015f\u00fcrme<\/td>\n<td>Loglar\u0131 d\u00fc\u015f\u00fcrme, d\u00f6n\u00fc\u015ft\u00fcrme, zenginle\u015ftirme, y\u00f6nlendirme<\/td>\n<\/tr>\n<tr>\n<td>Esneklik<\/td>\n<td>D\u00fc\u015f\u00fck<\/td>\n<td>Y\u00fcksek<\/td>\n<\/tr>\n<tr>\n<td>Y\u00f6netim<\/td>\n<td>Genellikle UI \u00fczerinden, manuel<\/td>\n<td>UI veya API \u00fczerinden, IaC (Terraform) ile<\/td>\n<\/tr>\n<tr>\n<td>Otomasyon Deste\u011fi<\/td>\n<td>S\u0131n\u0131rl\u0131\/Yok<\/td>\n<td>Tam (Terraform ile g\u00fc\u00e7l\u00fc entegrasyon)<\/td>\n<\/tr>\n<tr>\n<td>Karma\u015f\u0131k \u0130\u015flemler<\/td>\n<td>Desteklemez<\/td>\n<td>Destekler (alan \u00e7\u0131karma, yeniden bi\u00e7imlendirme vb.)<\/td>\n<\/tr>\n<tr>\n<td>Maliyet Optimizasyonu<\/td>\n<td>Evet (veri hacmini azaltarak)<\/td>\n<td>Evet (veri hacmini azaltarak ve de\u011feri art\u0131rarak)<\/td>\n<\/tr>\n<tr>\n<td>G\u00f6zlemlenebilirlik<\/td>\n<td>Temel<\/td>\n<td>Geli\u015fmi\u015f (daha temiz ve anlaml\u0131 verilerle)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\n        \u00d6zetle, Drop Kurallar\u0131 basit bir &#8220;ya hep ya hi\u00e7&#8221; filtreleme sa\u011flarken, Pipeline Cloud Kurallar\u0131 log verileriniz \u00fczerinde \u00e7ok daha incelikli ve kontrol edilebilir bir y\u00f6netim imkan\u0131 sunar. \u00d6zellikle Infrastructure as Code (IaC) prensiplerini benimsemi\u015f ekipler i\u00e7in Terraform ile Pipeline Cloud Kurallar\u0131 y\u00f6netimi, log altyap\u0131s\u0131n\u0131n \u00e7evik, \u00f6l\u00e7eklenebilir ve denetlenebilir olmas\u0131n\u0131 sa\u011flar.\n    <\/p>\n<h2>Terraform ile New Relic Pipeline Cloud Kurallar\u0131 Nas\u0131l Y\u00f6netilir?<\/h2>\n<p>\n        Log y\u00f6netim s\u00fcre\u00e7lerimizi otomatikle\u015ftirmek ve &#8220;Infrastructure as Code&#8221; (IaC) prensiplerini New Relic log filtrelerimize de uygulamak, Pipeline Cloud Kurallar\u0131n\u0131n en b\u00fcy\u00fck avantajlar\u0131ndan biridir. Terraform, bu otomasyonu sa\u011flamak i\u00e7in m\u00fckemmel bir ara\u00e7t\u0131r. Bu b\u00f6l\u00fcmde, Terraform ortam\u0131n\u0131z\u0131 nas\u0131l haz\u0131rlayaca\u011f\u0131n\u0131z\u0131 ve ilk Pipeline Cloud kural\u0131n\u0131z\u0131 kod ile nas\u0131l olu\u015fturaca\u011f\u0131n\u0131z\u0131 ad\u0131m ad\u0131m inceleyece\u011fiz. Bu sayede, log filtrelerinizi versiyon kontrol alt\u0131nda tutabilir, de\u011fi\u015fiklikleri g\u00fcvenle uygulayabilir ve tekrarlanabilir da\u011f\u0131t\u0131mlar ger\u00e7ekle\u015ftirebilirsiniz.\n    <\/p>\n<h3>Terraform Ortam\u0131n\u0131 Haz\u0131rlama: Gerekli Ad\u0131mlar Nelerdir?<\/h3>\n<p>\n        Terraform ile New Relic kaynaklar\u0131n\u0131 y\u00f6netmeye ba\u015flamadan \u00f6nce, gerekli ara\u00e7lar\u0131 kurman\u0131z ve kimlik do\u011frulamas\u0131n\u0131 yap\u0131land\u0131rman\u0131z gerekir.\n    <\/p>\n<ol>\n<li><strong>Terraform CLI Kurulumu:<\/strong> \u00d6ncelikle sisteminizde Terraform CLI&#8217;\u0131n kurulu oldu\u011fundan emin olun. Resmi Terraform web sitesinden i\u015fletim sisteminize uygun kurulum y\u00f6nergelerini takip edebilirsiniz. Kurulumdan sonra terminalinizde <code>terraform --version<\/code> komutunu \u00e7al\u0131\u015ft\u0131rarak ba\u015far\u0131l\u0131 olup olmad\u0131\u011f\u0131n\u0131 kontrol edebilirsiniz.<\/li>\n<li><strong>New Relic API Key Temini:<\/strong> Terraform&#8217;un New Relic hesab\u0131n\u0131zda i\u015flem yapabilmesi i\u00e7in bir New Relic API anahtar\u0131na ihtiyac\u0131n\u0131z olacak. Bu, genellikle New Relic One aray\u00fcz\u00fcnden (API Keys b\u00f6l\u00fcm\u00fc alt\u0131nda) olu\u015fturulan bir <a href=\"https:\/\/docs.newrelic.com\/docs\/apis\/get-started\/intro-apis\/types-new-relic-api-keys\/\">ADMIN User Key<\/a> olmal\u0131d\u0131r. Bu anahtar\u0131 g\u00fcvende tutun, zira New Relic hesab\u0131n\u0131zda tam yetki sa\u011flar.<\/li>\n<li><strong>New Relic Hesap Kimli\u011fi (Account ID):<\/strong> Kural\u0131 olu\u015fturaca\u011f\u0131n\u0131z New Relic hesab\u0131n\u0131z\u0131n kimli\u011fini de bilmeniz gerekir. Bu, genellikle New Relic One URL&#8217;sinde veya API Anahtarlar\u0131 sayfas\u0131nda bulunur.<\/li>\n<li><strong>Terraform Proje Dizini Olu\u015fturma:<\/strong> Yerel diskinizde yeni bir dizin olu\u015fturun (\u00f6rne\u011fin, <code>newrelic-pipeline-rules<\/code>) ve bu dizine ge\u00e7in. T\u00fcm Terraform yap\u0131land\u0131rma dosyalar\u0131n\u0131z\u0131 burada saklayacaks\u0131n\u0131z.<\/li>\n<li><strong>New Relic Provider Yap\u0131land\u0131rmas\u0131:<\/strong> <code>main.tf<\/code> ad\u0131nda bir dosya olu\u015fturarak New Relic sa\u011flay\u0131c\u0131s\u0131n\u0131 yap\u0131land\u0131r\u0131n. Bu dosya, Terraform&#8217;un New Relic ile nas\u0131l ileti\u015fim kuraca\u011f\u0131n\u0131 tan\u0131mlar. API anahtar\u0131n\u0131z\u0131 do\u011frudan buraya yazmak yerine, ortam de\u011fi\u015fkeni olarak veya bir <code>variables.tf<\/code> dosyas\u0131 arac\u0131l\u0131\u011f\u0131yla sa\u011flamak daha g\u00fcvenlidir.<\/li>\n<\/ol>\n<p>    <code-block><\/p>\n<pre><code>\nprovider \"newrelic\" {\n  # New Relic API anahtar\u0131n\u0131z\u0131 ortam de\u011fi\u015fkeni olarak sa\u011flaman\u0131z \u00f6nerilir:\n  # export NEW_RELIC_API_KEY=\"NRAK-...\"\n  # Alternatif olarak: api_key = var.new_relic_api_key\n  \n  # Account ID'nizi ortam de\u011fi\u015fkeni olarak sa\u011flaman\u0131z \u00f6nerilir:\n  # export NEW_RELIC_ACCOUNT_ID=\"1234567\"\n  # Alternatif olarak: account_id = var.new_relic_account_id\n}\n\nvariable \"new_relic_api_key\" {\n  description = \"New Relic Admin User Key\"\n  type        = string\n  sensitive   = true\n  default     = \"\" # Ortam de\u011fi\u015fkeni ayarlanmad\u0131ysa bo\u015f b\u0131rak\u0131labilir\n}\n\nvariable \"new_relic_account_id\" {\n  description = \"New Relic Account ID\"\n  type        = number\n}\n        <\/pre>\n<p><\/code><br \/>\n    <\/code-block><\/p>\n<p>\n        Yukar\u0131daki \u00f6rnekte, <code>new_relic_api_key<\/code> ve <code>new_relic_account_id<\/code> de\u011fi\u015fkenlerini tan\u0131mlad\u0131k. Bu de\u011fi\u015fkenleri ya bir <code>terraform.tfvars<\/code> dosyas\u0131na yazarak ya da ortam de\u011fi\u015fkenleri olarak (<code>export NEW_RELIC_API_KEY=\"...\"<\/code> ve <code>export NEW_RELIC_ACCOUNT_ID=\"1234567\"<\/code>) sa\u011flayarak kullanabilirsiniz. Ortam de\u011fi\u015fkenleri, hassas verileri do\u011frudan kod i\u00e7inde tutmad\u0131\u011f\u0131 i\u00e7in daha g\u00fcvenli bir yakla\u015f\u0131md\u0131r.\n    <\/p>\n<ol start=\"6\">\n<li><strong>Terraform Init ve Plan:<\/strong> Yap\u0131land\u0131rma dosyalar\u0131n\u0131z\u0131 olu\u015fturduktan sonra, terminalde proje dizininize giderek a\u015fa\u011f\u0131daki komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:\n<ul>\n<li><code>terraform init<\/code>: Bu komut, New Relic sa\u011flay\u0131c\u0131s\u0131n\u0131 indirir ve projeniz i\u00e7in gerekli backend yap\u0131land\u0131rmas\u0131n\u0131 yapar.<\/li>\n<li><code>terraform plan<\/code>: Bu komut, Terraform'un yapaca\u011f\u0131 de\u011fi\u015fiklikleri size g\u00f6sterir. Hen\u00fcz bir kaynak tan\u0131mlamad\u0131\u011f\u0131m\u0131z i\u00e7in, \u015fimdilik sadece sa\u011flay\u0131c\u0131n\u0131n do\u011fru yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131n\u0131 teyit edecektir.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h3>\u0130lk Pipeline Cloud Kural\u0131n\u0131 Terraform ile Olu\u015fturma<\/h3>\n<p>\n        \u015eimdi, ortam\u0131m\u0131z haz\u0131r oldu\u011funa g\u00f6re, ilk New Relic Pipeline Cloud kural\u0131m\u0131z\u0131 Terraform ile tan\u0131mlayabiliriz. <code>newrelic_cloud_pipeline_rule<\/code> kayna\u011f\u0131n\u0131 kullanarak basit bir kural olu\u015ftural\u0131m: \u00f6rne\u011fin, \"DEBUG\" seviyesindeki t\u00fcm loglar\u0131 d\u00fc\u015f\u00fcren bir kural.\n    <\/p>\n<p>    <code-block><\/p>\n<pre><code>\nresource \"newrelic_cloud_pipeline_rule\" \"drop_debug_logs\" {\n  account_id  = var.new_relic_account_id\n  description = \"Uygulama genelindeki DEBUG seviyesi loglar\u0131n\u0131 d\u00fc\u015f\u00fcr\u00fcr.\"\n  enabled     = true\n  # 'matching_rules' blo\u011fu, hangi loglar\u0131n bu kurala uyaca\u011f\u0131n\u0131 tan\u0131mlar.\n  # Birden fazla e\u015fle\u015fme kural\u0131 tan\u0131mlanabilir ve AND mant\u0131\u011f\u0131yla birle\u015fir.\n  matching_rules {\n    field = \"log_level\"\n    operator = \"EQ\" # E\u015fitlik operat\u00f6r\u00fc\n    value = \"DEBUG\"\n  }\n\n  # 'actions' blo\u011fu, e\u015fle\u015fen loglar \u00fczerinde yap\u0131lacak i\u015flemleri tan\u0131mlar.\n  # \u015eu anda sadece 'drop' eylemi desteklenmektedir.\n  actions {\n    action = \"drop\"\n  }\n}\n        <\/pre>\n<p><\/code><br \/>\n    <\/code-block><\/p>\n<p>\n        Yukar\u0131daki kod blo\u011fu, <code>drop_debug_logs<\/code> ad\u0131nda bir Pipeline Cloud kural\u0131 tan\u0131mlar.\n    <\/p>\n<ul>\n<li><code>account_id<\/code>: Kural\u0131n uygulanaca\u011f\u0131 New Relic hesap kimli\u011fi.<\/li>\n<li><code>description<\/code>: Kural\u0131n ne yapt\u0131\u011f\u0131n\u0131 a\u00e7\u0131klayan k\u0131sa bir metin.<\/li>\n<li><code>enabled<\/code>: Kural\u0131n etkin olup olmad\u0131\u011f\u0131n\u0131 belirler (<code>true<\/code> veya <code>false<\/code>).<\/li>\n<li><code>matching_rules<\/code>: Bu blok, kural\u0131n hangi loglara uygulanaca\u011f\u0131n\u0131 belirler.\n<ul>\n<li><code>field<\/code>: Log i\u00e7indeki hangi alan\u0131n kontrol edilece\u011fini belirtir (\u00f6rne\u011fin, <code>log_level<\/code>, <code>message<\/code>, <code>hostname<\/code>).<\/li>\n<li><code>operator<\/code>: E\u015fle\u015fme operat\u00f6r\u00fcn\u00fc belirtir (<code>EQ<\/code> - e\u015fit, <code>NE<\/code> - e\u015fit de\u011fil, <code>CONTAINS<\/code> - i\u00e7erir, <code>NOT_CONTAINS<\/code> - i\u00e7ermez, <code>MATCHES<\/code> - RegEx e\u015fle\u015fmesi, <code>NOT_MATCHES<\/code> - RegEx e\u015fle\u015fmez, <code>STARTS_WITH<\/code>, <code>ENDS_WITH<\/code>).<\/li>\n<li><code>value<\/code>: E\u015fle\u015ftirilecek de\u011feri belirtir.<\/li>\n<\/ul>\n<\/li>\n<li><code>actions<\/code>: Bu blok, <code>matching_rules<\/code> ile e\u015fle\u015fen loglar \u00fczerinde yap\u0131lacak i\u015flemi tan\u0131mlar. \u015eu anda ana i\u015flem <code>drop<\/code>'t\u0131r. Gelecekte farkl\u0131 d\u00f6n\u00fc\u015ft\u00fcrme veya zenginle\u015ftirme eylemleri de eklenebilir.<\/li>\n<\/ul>\n<p>    <expert-tip><br \/>\n        <strong>Uzman \u0130pucu:<\/strong> <code>matching_rules<\/code> i\u00e7indeki <code>operator<\/code> olarak <code>MATCHES<\/code> veya <code>NOT_MATCHES<\/code> kulland\u0131\u011f\u0131n\u0131zda, <code>value<\/code> alan\u0131 bir d\u00fczenli ifade (RegEx) olmal\u0131d\u0131r. RegEx'ler karma\u015f\u0131k olabilece\u011finden, New Relic'in kendi RegEx test arac\u0131n\u0131 veya <a href=\"https:\/\/regex101.com\/\">regex101.com<\/a> gibi siteleri kullanarak test etmek, beklenmedik hatalar\u0131 \u00f6nlemek a\u00e7\u0131s\u0131ndan kritik \u00f6neme sahiptir. Yanl\u0131\u015f bir RegEx, ya gereksiz loglar\u0131n ge\u00e7mesine ya da kritik loglar\u0131n d\u00fc\u015f\u00fcr\u00fclmesine neden olabilir.<br \/>\n    <\/expert-tip><\/p>\n<p>\n        Bu kodu <code>main.tf<\/code> dosyan\u0131za ekledikten sonra, de\u011fi\u015fiklikleri uygulamak i\u00e7in tekrar a\u015fa\u011f\u0131daki komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:\n    <\/p>\n<ul>\n<li><code>terraform plan<\/code>: Tan\u0131mlad\u0131\u011f\u0131n\u0131z kural\u0131n olu\u015fturulaca\u011f\u0131n\u0131 (<code>+ create<\/code>) g\u00f6steren bir \u00e7\u0131kt\u0131 almal\u0131s\u0131n\u0131z.<\/li>\n<li><code>terraform apply<\/code>: Terraform'un bu kural\u0131 New Relic hesab\u0131n\u0131zda olu\u015fturmas\u0131n\u0131 onaylamak i\u00e7in <code>yes<\/code> yaz\u0131n.<\/li>\n<\/ul>\n<p>\n        Ba\u015far\u0131l\u0131 bir uygulaman\u0131n ard\u0131ndan, New Relic One aray\u00fcz\u00fcne (Log Management -> Pipeline Rules) giderek yeni olu\u015fturdu\u011funuz kural\u0131 g\u00f6rebilirsiniz. Bu sayede, log filtreleme stratejilerinizi kod ile y\u00f6netmeye ba\u015flam\u0131\u015f olursunuz. Bu temel ad\u0131mlar, daha karma\u015f\u0131k ge\u00e7i\u015f senaryolar\u0131 i\u00e7in sa\u011flam bir zemin olu\u015fturur.\n    <\/p>\n<h2>Ger\u00e7ek D\u00fcnya Senaryosu: Eski Drop Kurallar\u0131n\u0131 Pipeline Cloud Kurallar\u0131na Ta\u015f\u0131ma<\/h2>\n<p>\n        Bir\u00e7ok kurulu\u015f, New Relic'teki log y\u00f6netimini optimize etmek amac\u0131yla eski Drop Kurallar\u0131n\u0131 kullanmaya ba\u015flam\u0131\u015ft\u0131r. Ancak, bu kurallar\u0131n s\u0131n\u0131rlamalar\u0131 g\u00f6z \u00f6n\u00fcne al\u0131nd\u0131\u011f\u0131nda, daha geli\u015fmi\u015f olan Pipeline Cloud Kurallar\u0131na ge\u00e7i\u015f yapmak ka\u00e7\u0131n\u0131lmaz bir hale gelmi\u015ftir. Bu ge\u00e7i\u015f s\u00fcreci, sadece teknolojik bir y\u00fckseltme de\u011fil, ayn\u0131 zamanda log verisi stratejinizi g\u00f6zden ge\u00e7irme ve maliyet optimizasyonu i\u00e7in yeni f\u0131rsatlar yaratma anlam\u0131na da gelir. Bu b\u00f6l\u00fcmde, ger\u00e7ek bir d\u00fcnya senaryosu \u00fczerinden eski Drop Kurallar\u0131n\u0131 Pipeline Cloud Kurallar\u0131na Terraform ile nas\u0131l ta\u015f\u0131yaca\u011f\u0131m\u0131z\u0131 ad\u0131m ad\u0131m inceleyece\u011fiz. Odak noktam\u0131z, veri g\u00fcr\u00fclt\u00fcs\u00fcn\u00fc azaltmak ve sadece eyleme ge\u00e7irilebilir loglar\u0131 tutmak olacak.\n    <\/p>\n<h3>Mevcut Drop Kurallar\u0131n\u0131 Anlama ve Envanterini \u00c7\u0131karma<\/h3>\n<p>\n        Ge\u00e7i\u015fin ilk ve en kritik ad\u0131m\u0131, mevcut durumunuzu eksiksiz bir \u015fekilde anlamakt\u0131r. New Relic hesab\u0131n\u0131zda tan\u0131ml\u0131 olan t\u00fcm Drop Kurallar\u0131n\u0131n kapsaml\u0131 bir envanterini \u00e7\u0131karmal\u0131s\u0131n\u0131z. Bu envanter, her kural\u0131n ne yapt\u0131\u011f\u0131n\u0131, hangi loglar\u0131 etkiledi\u011fini ve ne kadar veri hacmini d\u00fc\u015f\u00fcrd\u00fc\u011f\u00fcn\u00fc i\u00e7ermelidir.\n    <\/p>\n<ol>\n<li><strong>New Relic UI \u00dczerinden G\u00f6zden Ge\u00e7irme:<\/strong> New Relic One aray\u00fcz\u00fcnde \"Log Management\" b\u00f6l\u00fcm\u00fcne gidin ve \"Drop Filter Rules\" (veya benzer bir ba\u015fl\u0131k alt\u0131nda) mevcut kurallar\u0131n\u0131z\u0131 listeleyin. Her bir kural\u0131n a\u00e7\u0131klamas\u0131n\u0131, filtreleme desenini (genellikle bir RegEx veya anahtar kelime) ve etkin olup olmad\u0131\u011f\u0131n\u0131 dikkatlice not al\u0131n.<\/li>\n<li><strong>API veya NRQL ile Sorgulama:<\/strong> E\u011fer \u00e7ok say\u0131da Drop Kural\u0131n\u0131z varsa, bunlar\u0131 manuel olarak incelemek zaman al\u0131c\u0131 olabilir. New Relic API'si veya NRQL (New Relic Query Language) kullanarak bu kurallar\u0131n bir listesini \u00e7ekmek daha verimli olabilir. Mevcut Drop kurallar\u0131n\u0131n kendisi API taraf\u0131ndan y\u00f6netilemese de, d\u00fc\u015f\u00fcr\u00fclen loglar\u0131 g\u00f6zlemlemek i\u00e7in NRQL kullanabilirsiniz:<br \/>\n            <code-block><\/p>\n<pre><code>\nFROM Log\nSELECT count(*)\nWHERE newrelic.logPattern = 'Dropped by Rule: [Rule Name]'\nFACET newrelic.logPattern\nSINCE 1 week ago\nTIMESERIES\n                <\/pre>\n<p><\/code><br \/>\n            <\/code-block><br \/>\n            Bu sorgu, hangi Drop Kurallar\u0131n\u0131n ne kadar log d\u00fc\u015f\u00fcrd\u00fc\u011f\u00fcn\u00fc anlaman\u0131za yard\u0131mc\u0131 olabilir.<\/li>\n<li><strong>Ama\u00e7 ve Etki Analizi:<\/strong> Her kural i\u00e7in a\u015fa\u011f\u0131daki sorular\u0131 yan\u0131tlamaya \u00e7al\u0131\u015f\u0131n:\n<ul>\n<li>Bu kural ne t\u00fcr loglar\u0131 d\u00fc\u015f\u00fcr\u00fcyor? (\u00d6rn: <code>DEBUG<\/code> loglar\u0131, belirli bir servisten gelen <code>INFO<\/code> mesajlar\u0131, sa\u011fl\u0131k kontrol\u00fc loglar\u0131.)<\/li>\n<li>Bu loglar ger\u00e7ekten de\u011fersiz mi? D\u00fc\u015f\u00fcr\u00fclmesi operasyonel g\u00f6r\u00fcn\u00fcrl\u00fc\u011f\u00fcm\u00fcz\u00fc etkiler mi?<\/li>\n<li>Kural hangi RegEx'i veya filtreyi kullan\u0131yor? Bu desen, Pipeline Cloud Kurallar\u0131 i\u00e7in nas\u0131l d\u00f6n\u00fc\u015ft\u00fcr\u00fclecek?<\/li>\n<li>Bu kural\u0131n tahmini maliyet tasarrufu nedir?<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<p>\n        <strong>Vaka Analizi: Eski Bir Sistemin Yo\u011fun Hata Loglar\u0131n\u0131 Filtreleme<\/strong><br \/>\n        <br \/>\n        Diyelim ki, eski bir Java uygulamam\u0131z (<code>legacy-app<\/code>) var ve bu uygulama, belirli bir hata durumunda (\u00f6rne\u011fin, \"Connection timeout to external service\") dakikada y\u00fczlerce, hatta binlerce \"ERROR\" seviyesi log \u00fcretiyor. Ancak, bu spesifik hata genellikle kendi kendine \u00e7\u00f6z\u00fcl\u00fcyor ve s\u00fcrekli olarak uyar\u0131 vermek yerine, yaln\u0131zca belirli bir frekans\u0131n \u00fczerinde tekrarland\u0131\u011f\u0131nda bildirim almak istiyoruz. Mevcut bir Drop Kural\u0131, bu loglar\u0131 tamamen d\u00fc\u015f\u00fcr\u00fcyor ve bu da sorunun ger\u00e7ekte ne zaman ortaya \u00e7\u0131kt\u0131\u011f\u0131n\u0131 anlamam\u0131z\u0131 engelliyor. Amac\u0131m\u0131z, bu loglar\u0131n d\u00fc\u015f\u00fcr\u00fclmesini sa\u011flamak, ancak Pipeline Cloud Kurallar\u0131n\u0131n esnekli\u011finden faydalanarak daha sonra bu loglar\u0131 i\u015fleyebilir veya farkl\u0131 bir e\u015fikle uyar\u0131 verebilir hale gelmek.\n    <\/p>\n<h3>Ge\u00e7i\u015f Stratejileri ve D\u00f6n\u00fc\u015ft\u00fcrme Teknikleri<\/h3>\n<p>\n        Mevcut Drop Kurallar\u0131n\u0131z\u0131n envanterini \u00e7\u0131kard\u0131ktan sonra, bunlar\u0131 Pipeline Cloud Kurallar\u0131na d\u00f6n\u00fc\u015ft\u00fcrme s\u00fcrecine ge\u00e7ebiliriz. Bu s\u00fcre\u00e7, stratejik bir yakla\u015f\u0131mla ele al\u0131nmal\u0131d\u0131r.\n    <\/p>\n<ol>\n<li><strong>Tek Tek Ta\u015f\u0131ma ve Do\u011frulama:<\/strong> \u00d6zellikle kritik veya karma\u015f\u0131k kurallar i\u00e7in, her birini tek tek Pipeline Cloud Kural\u0131na d\u00f6n\u00fc\u015ft\u00fcr\u00fcp, uygulay\u0131p, ard\u0131ndan New Relic \u00fczerinde do\u011fru \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak en g\u00fcvenli yakla\u015f\u0131md\u0131r. Bu, potansiyel hatalar\u0131n etkisini minimize eder.<\/li>\n<li><strong>RegEx ve Filtre D\u00f6n\u00fc\u015f\u00fcm\u00fc:<\/strong> Drop Kurallar\u0131nda kullan\u0131lan RegEx desenlerini veya anahtar kelime filtrelerini, Pipeline Cloud Kurallar\u0131n\u0131n <code>matching_rules<\/code> yap\u0131s\u0131na uygun hale getirmeniz gerekecektir.\n<ul>\n<li><strong>Basit String E\u015fle\u015fmesi:<\/strong> Drop Rule'da \"DEBUG\" anahtar kelimesini d\u00fc\u015f\u00fcren bir kural varsa:<br \/>\n                    <code-block><\/p>\n<pre><code>\n# Drop Rule (konsept)\n# Contains \"DEBUG\"\n\n# Pipeline Cloud Rule Terraform kar\u015f\u0131l\u0131\u011f\u0131:\nresource \"newrelic_cloud_pipeline_rule\" \"drop_debug_logs_migrated\" {\n  account_id  = var.new_relic_account_id\n  description = \"Eski DEBUG drop kural\u0131n\u0131n yeni Pipeline versiyonu.\"\n  enabled     = true\n  matching_rules {\n    field    = \"message\"\n    operator = \"CONTAINS\"\n    value    = \"DEBUG\"\n  }\n  actions {\n    action = \"drop\"\n  }\n}\n                        <\/pre>\n<p><\/code><br \/>\n                    <\/code-block>\n                <\/li>\n<li><strong>Karma\u015f\u0131k RegEx E\u015fle\u015fmeleri:<\/strong> Drop Rule'da belirli bir hata desenini (\u00f6rne\u011fin, \"Connection timeout to external service for user ID \\d+\") i\u00e7eren loglar\u0131 d\u00fc\u015f\u00fcren bir kural varsa:<br \/>\n                    <code-block><\/p>\n<pre><code>\n# Drop Rule (konsept)\n# Regex: \"Connection timeout to external service for user ID \\d+\"\n\n# Pipeline Cloud Rule Terraform kar\u015f\u0131l\u0131\u011f\u0131:\nresource \"newrelic_cloud_pipeline_rule\" \"drop_legacy_app_connection_errors\" {\n  account_id  = var.new_relic_account_id\n  description = \"Legacy uygulamas\u0131ndan gelen belirli ba\u011flant\u0131 zaman a\u015f\u0131m\u0131 hatalar\u0131n\u0131 d\u00fc\u015f\u00fcr\u00fcr.\"\n  enabled     = true\n  matching_rules {\n    field    = \"message\"\n    operator = \"MATCHES\"\n    value    = \"Connection timeout to external service for user ID \\\\d+\" # RegEx'te ters slash'lar\u0131 \u00e7iftleyin\n  }\n  matching_rules { # Ek ko\u015ful: sadece legacy-app'ten gelen loglar\n    field    = \"entity.name\" # Veya 'service.name', 'app.name' log yap\u0131n\u0131za g\u00f6re de\u011fi\u015fir\n    operator = \"EQ\"\n    value    = \"legacy-app\"\n  }\n  actions {\n    action = \"drop\"\n  }\n}\n                        <\/pre>\n<p><\/code><br \/>\n                    <\/code-block><br \/>\n                    <expert-tip><br \/>\n                        <strong>Uzman \u0130pucu: RegEx ve Escape Karakterleri:<\/strong> Terraform'da RegEx kullan\u0131rken, \u00f6zellikle ters slash (<code>\\<\/code>) gibi \u00f6zel karakterleri belirtmek i\u00e7in \u00e7ift ters slash (<code>\\\\<\/code>) kullanman\u0131z gerekebilir. Bu, RegEx motorunun karakteri do\u011fru yorumlamas\u0131n\u0131 sa\u011flar. Her zaman RegEx'inizi bir test arac\u0131yla do\u011frulay\u0131n.<br \/>\n                    <\/expert-tip>\n                <\/li>\n<li><strong>Birden Fazla Ko\u015fulun Birle\u015ftirilmesi:<\/strong> Drop kurallar\u0131 genellikle tek bir desene odaklan\u0131rken, Pipeline kurallar\u0131 birden fazla <code>matching_rules<\/code> blo\u011fu ile <code>AND<\/code> mant\u0131\u011f\u0131yla \u00e7al\u0131\u015f\u0131r. Bu, daha hassas filtreleme yapman\u0131z\u0131 sa\u011flar. \u00d6rne\u011fin, sadece <code>legacy-app<\/code> servisinden gelen <code>ERROR<\/code> seviyesindeki loglar\u0131 d\u00fc\u015f\u00fcrmek isteyebilirsiniz. Yukar\u0131daki \u00f6rnekte <code>entity.name<\/code> ko\u015fulu eklenerek bu g\u00f6sterilmi\u015ftir.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h3>Ge\u00e7i\u015f Sonras\u0131 Do\u011frulama ve \u0130zleme<\/h3>\n<p>\n        Drop kurallar\u0131n\u0131z\u0131 Pipeline Cloud kurallar\u0131na d\u00f6n\u00fc\u015ft\u00fcr\u00fcp Terraform ile uygulad\u0131ktan sonra, her \u015feyin beklendi\u011fi gibi \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olmak i\u00e7in kapsaml\u0131 bir do\u011frulama ve izleme s\u00fcreci y\u00fcr\u00fctmek hayati \u00f6nem ta\u015f\u0131r. Bu ad\u0131m, potansiyel veri kayb\u0131n\u0131 veya hatal\u0131 filtrelemeyi \u00f6nler.\n    <\/p>\n<ol>\n<li><strong>New Relic Query Language (NRQL) ile Kural Etkinli\u011fini Do\u011frulama:<\/strong>\n<p>New Relic Log Explorer'da veya bir NRQL sorgu penceresinde, yeni Pipeline kurallar\u0131n\u0131z\u0131n etkinli\u011fini kontrol edebilirsiniz. \u00d6rne\u011fin, d\u00fc\u015f\u00fcrmeyi hedefledi\u011finiz loglar\u0131n art\u0131k g\u00f6r\u00fcnmedi\u011fini veya belirli bir d\u00f6n\u00fc\u015f\u00fcm\u00fcn ba\u015far\u0131yla uyguland\u0131\u011f\u0131n\u0131 do\u011frulayabilirsiniz.<\/p>\n<p>            <code-block><\/p>\n<pre><code>\n# Drop edildi\u011fini bekledi\u011fimiz loglar\u0131n gelip gelmedi\u011fini kontrol etme\nFROM Log\nSELECT count(*)\nWHERE log_level = 'DEBUG' AND entity.name = 'my-application'\nSINCE 5 minutes ago\n\n# Eski drop kural\u0131n\u0131n yerine ge\u00e7en yeni kural\u0131n \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 kontrol etme (e\u011fer kural d\u00fc\u015f\u00fcrme yap\u0131yorsa, bu sorgu 0 sonu\u00e7 d\u00f6nmelidir)\nFROM Log\nSELECT *\nWHERE message LIKE '%Connection timeout to external service for user ID%' AND entity.name = 'legacy-app'\nSINCE 10 minutes ago\n                <\/pre>\n<p><\/code><br \/>\n            <\/code-block><\/p>\n<p>Ayr\u0131ca, <code>newrelic.ingest.log.drop<\/code> metri\u011fini kullanarak d\u00fc\u015f\u00fcr\u00fclen loglar\u0131n hacmini de izleyebilirsiniz. Bu metrik, Pipeline kurallar\u0131n\u0131n ne kadar veri d\u00fc\u015f\u00fcrd\u00fc\u011f\u00fcn\u00fc g\u00f6sterir.<\/p>\n<\/li>\n<li><strong>Maliyet Etkisini \u0130zleme:<\/strong> Ge\u00e7i\u015fin ana motivasyonlar\u0131ndan biri maliyet optimizasyonu oldu\u011fundan, New Relic faturan\u0131z\u0131 ve veri al\u0131m hacminizi yak\u0131ndan takip edin. Beklenen d\u00fc\u015f\u00fc\u015fleri g\u00f6zlemleyebilmelisiniz. New Relic Usage sayfas\u0131 veya NRQL ile kullan\u0131m metriklerini sorgulayarak bu durumu izleyebilirsiniz.<\/li>\n<li><strong>Log Explorer'da Filtrelerin \u00c7al\u0131\u015ft\u0131\u011f\u0131n\u0131 G\u00f6rme:<\/strong> New Relic Log Explorer'\u0131 kullanarak canl\u0131 log ak\u0131\u015f\u0131n\u0131 g\u00f6zlemleyin. Yeni Pipeline kurallar\u0131n\u0131z\u0131n loglar\u0131 do\u011fru \u015fekilde d\u00fc\u015f\u00fcrd\u00fc\u011f\u00fcn\u00fc veya d\u00f6n\u00fc\u015ft\u00fcrd\u00fc\u011f\u00fcn\u00fc g\u00f6rsel olarak do\u011frulay\u0131n. Belirli filtreleri uygulayarak d\u00fc\u015f\u00fcrmeyi hedefledi\u011finiz loglar\u0131n ger\u00e7ekten g\u00f6r\u00fcnmedi\u011finden emin olun.<\/li>\n<li><strong>Eski Drop Kurallar\u0131n\u0131 Devre D\u0131\u015f\u0131 B\u0131rakma (A\u015famal\u0131):<\/strong> Yeni Pipeline Cloud Kurallar\u0131n\u0131n istikrarl\u0131 bir \u015fekilde \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olduktan sonra, ilgili eski Drop Kurallar\u0131n\u0131 a\u015famal\u0131 olarak devre d\u0131\u015f\u0131 b\u0131rakabilirsiniz. Bu, bir \"geri d\u00f6n\u00fc\u015f\" senaryosu i\u00e7in bir s\u00fcre hem eski hem de yeni kurallar\u0131n paralel \u00e7al\u0131\u015fmas\u0131na izin vermek anlam\u0131na gelebilir. Her \u015fey yolunda gitti\u011finde, eski Drop kurallar\u0131n\u0131 tamamen silebilirsiniz. Terraform ile yap\u0131lan ge\u00e7i\u015fte, eski kurallar New Relic provider taraf\u0131ndan y\u00f6netilmedi\u011fi i\u00e7in manuel olarak devre d\u0131\u015f\u0131 b\u0131rak\u0131lmal\u0131d\u0131r.<\/li>\n<\/ol>\n<p>\n        Bu detayl\u0131 ge\u00e7i\u015f stratejisi, log y\u00f6netiminizin daha verimli, maliyet-etkin ve gelece\u011fe haz\u0131r olmas\u0131n\u0131 sa\u011flarken, operasyonel riskleri minimize etmenize yard\u0131mc\u0131 olacakt\u0131r. Terraform'un g\u00fcc\u00fc sayesinde, bu s\u00fcreci g\u00fcvenilir ve tekrarlanabilir bir \u015fekilde ger\u00e7ekle\u015ftirebilirsiniz.\n    <\/p>\n<h2>\u0130leri D\u00fczey Kullan\u0131m Senaryolar\u0131, En \u0130yi Uygulamalar ve Gelecek Perspektifleri<\/h2>\n<p>\n        New Relic Pipeline Cloud Kurallar\u0131n\u0131n Terraform ile y\u00f6netimi, sadece eski Drop Kurallar\u0131ndan ge\u00e7i\u015f yapmakla kalmaz, ayn\u0131 zamanda log y\u00f6netimi stratejinizi daha da ileriye ta\u015f\u0131man\u0131z i\u00e7in yeni kap\u0131lar a\u00e7ar. Bu b\u00f6l\u00fcmde, daha karma\u015f\u0131k senaryolar, performans optimizasyonu, dinamik kural y\u00f6netimi ve modern dashboard entegrasyonu gibi ileri d\u00fczey konulara odaklanarak, log verilerinizden en y\u00fcksek de\u011feri nas\u0131l elde edebilece\u011finizi inceleyece\u011fiz. Bu ipu\u00e7lar\u0131, observability altyap\u0131n\u0131z\u0131n daha esnek, \u00f6l\u00e7eklenebilir ve maliyet etkin olmas\u0131n\u0131 sa\u011flayacakt\u0131r.\n    <\/p>\n<h3>Performans Optimizasyonu ve Maliyet Kontrol\u00fc<\/h3>\n<p>\n        B\u00fcy\u00fck \u00f6l\u00e7ekli ortamlarda, Pipeline kurallar\u0131n\u0131n performans\u0131 ve dolay\u0131s\u0131yla maliyet etkisi \u00e7ok \u00f6nemlidir.\n    <\/p>\n<ul>\n<li><strong>Kural S\u0131ralamas\u0131 ve Etkisi:<\/strong> Pipeline kurallar\u0131, belirli bir s\u0131raya g\u00f6re uygulan\u0131r. En y\u00fcksek hacimli loglar\u0131 d\u00fc\u015f\u00fcren veya en s\u0131k e\u015fle\u015fen kurallar\u0131 listenin ba\u015f\u0131na koymak, i\u015fleme maliyetlerini \u00f6nemli \u00f6l\u00e7\u00fcde azaltabilir. \u00d6rne\u011fin, t\u00fcm \"DEBUG\" loglar\u0131n\u0131 d\u00fc\u015f\u00fcren bir kural\u0131, daha spesifik bir uygulama hatas\u0131 kural\u0131ndan \u00f6nce \u00e7al\u0131\u015ft\u0131rarak, daha az logun di\u011fer kurallar taraf\u0131ndan i\u015flenmesini sa\u011flayabilirsiniz.<\/li>\n<li><strong>Agresif Filtreleme Stratejileri:<\/strong> Log verilerinizin \u00e7o\u011funun asl\u0131nda eyleme ge\u00e7irilemez oldu\u011funu fark ettiyseniz, \"varsay\u0131lan olarak d\u00fc\u015f\u00fcr, \u00f6nemli olan\u0131 tut\" yakla\u015f\u0131m\u0131n\u0131 benimseyebilirsiniz. \u00d6rne\u011fin, belirli bir uygulama i\u00e7in sadece \"ERROR\" ve \"WARN\" seviyesindeki loglar\u0131 tutarken, di\u011ferlerini d\u00fc\u015f\u00fcrmek i\u00e7in bir genel kural olu\u015fturabilirsiniz.<\/li>\n<li><strong>RegEx Verimlili\u011fi:<\/strong> RegEx'ler g\u00fc\u00e7l\u00fcd\u00fcr, ancak ayn\u0131 zamanda performans maliyeti de ta\u015f\u0131rlar. \u00c7ok karma\u015f\u0131k veya verimsiz RegEx desenleri, binlerce log \u00fczerinde uyguland\u0131\u011f\u0131nda i\u015fleme s\u00fcresini uzatabilir. M\u00fcmk\u00fcn oldu\u011funca spesifik ve basit RegEx'ler kullanmaya \u00e7al\u0131\u015f\u0131n. Alternatif olarak, <code>CONTAINS<\/code> veya <code>EQ<\/code> gibi daha basit operat\u00f6rler, RegEx'lerden daha h\u0131zl\u0131 \u00e7al\u0131\u015f\u0131r.<\/li>\n<\/ul>\n<h3>Dinamik Kurallar ve \u00c7evik Geli\u015ftirme Yakla\u015f\u0131m\u0131<\/h3>\n<p>\n        Terraform'un sundu\u011fu programatik yetenekler sayesinde, Pipeline kurallar\u0131n\u0131z\u0131 dinamik olarak olu\u015fturabilir ve y\u00f6netebilirsiniz. Bu, \u00f6zellikle mikroservis mimarilerinde veya h\u0131zla de\u011fi\u015fen ortamlarda b\u00fcy\u00fck avantaj sa\u011flar.\n    <\/p>\n<ul>\n<li><strong>Terraform <code>for_each<\/code> veya <code>count<\/code> ile Dinamik Kural Setleri:<\/strong> Benzer kurallar\u0131 birden fazla uygulama veya ortam i\u00e7in tekrarlamak yerine, Terraform'un d\u00f6ng\u00fc yap\u0131lar\u0131n\u0131 (<code>for_each<\/code>, <code>count<\/code>) kullanarak dinamik olarak kurallar olu\u015fturabilirsiniz. \u00d6rne\u011fin, bir liste veya harita tan\u0131mlayarak her servis i\u00e7in belirli loglar\u0131 d\u00fc\u015f\u00fcren kurallar olu\u015fturabilirsiniz.<br \/>\n            <code-block><\/p>\n<pre><code>\nlocals {\n  services_to_monitor = [\n    { name = \"user-service\", environment = \"production\" },\n    { name = \"product-service\", environment = \"staging\" },\n    # ... di\u011fer servisler\n  ]\n}\n\nresource \"newrelic_cloud_pipeline_rule\" \"service_debug_drop\" {\n  for_each = { for s in local.services_to_monitor : \"${s.name}-${s.environment}\" => s }\n\n  account_id  = var.new_relic_account_id\n  description = \"DEBUG loglar\u0131n\u0131 d\u00fc\u015f\u00fcr: ${each.value.name} (${each.value.environment})\"\n  enabled     = true\n\n  matching_rules {\n    field    = \"log_level\"\n    operator = \"EQ\"\n    value    = \"DEBUG\"\n  }\n  matching_rules {\n    field    = \"service.name\" # veya loglar\u0131n\u0131za g\u00f6re ilgili alan\n    operator = \"EQ\"\n    value    = each.value.name\n  }\n  matching_rules {\n    field    = \"environment\" # veya loglar\u0131n\u0131za g\u00f6re ilgili alan\n    operator = \"EQ\"\n    value    = each.value.environment\n  }\n\n  actions {\n    action = \"drop\"\n  }\n}\n                <\/pre>\n<p><\/code><br \/>\n            <\/code-block><br \/>\n            Bu \u00f6rnek, farkl\u0131 servisler ve ortamlar i\u00e7in dinamik olarak DEBUG log d\u00fc\u015f\u00fcrme kurallar\u0131 olu\u015fturur.\n        <\/li>\n<li><strong>CI\/CD Entegrasyonu:<\/strong> Terraform yap\u0131land\u0131rman\u0131z\u0131 bir versiyon kontrol sisteminde (Git gibi) tutarak, CI\/CD i\u015flem hatt\u0131n\u0131za entegre edebilirsiniz. Bu sayede, bir kural de\u011fi\u015fikli\u011fi yap\u0131ld\u0131\u011f\u0131nda, otomatik olarak <code>terraform plan<\/code> ve <code>terraform apply<\/code> ad\u0131mlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131larak de\u011fi\u015fiklikler test edilebilir ve g\u00fcvenli bir \u015fekilde da\u011f\u0131t\u0131labilir. Terraform Cloud veya Atlantis gibi ara\u00e7lar, bu s\u00fcre\u00e7leri daha da kolayla\u015ft\u0131r\u0131r.<\/li>\n<\/ul>\n<h3>Mobil Uyumlu Dashboard Entegrasyonu (Media Query \u00d6rne\u011fi)<\/h3>\n<p>\n        Pipeline Cloud Kurallar\u0131, log verilerinizi daha anlaml\u0131 hale getirerek, New Relic veya \u00f6zel dashboard'lar\u0131n\u0131zda daha temiz ve odaklanm\u0131\u015f g\u00f6rselle\u015ftirmeler sunman\u0131z\u0131 sa\u011flar. Log verilerinin filtrelenmesi ve d\u00f6n\u00fc\u015ft\u00fcr\u00fclmesi, bu dashboard'lar\u0131n daha h\u0131zl\u0131 y\u00fcklenmesine ve daha alakal\u0131 bilgiler sunmas\u0131na yard\u0131mc\u0131 olur. Modern web geli\u015ftirme pratiklerinde, bu t\u00fcr dashboard'lar\u0131n farkl\u0131 cihazlarda (mobil, tablet, masa\u00fcst\u00fc) iyi g\u00f6r\u00fcnmesi i\u00e7in mobil uyumluluk \u00f6nemlidir. \u0130\u015fte bu noktada, HTML ve CSS'deki media query'ler devreye girer.\n    <\/p>\n<p>\n        Bu makalenin \u00e7\u0131kt\u0131s\u0131 bir HTML i\u00e7eri\u011fi oldu\u011fu i\u00e7in, do\u011frudan kendi \u00e7\u0131kt\u0131m\u0131za medya sorgusu uygulayamasak da, filtrelenmi\u015f log verilerini t\u00fcketen ve g\u00f6steren bir dashboard'un nas\u0131l mobil uyumlu hale getirilebilece\u011fine dair bir \u00f6rnekle konuyu somutla\u015ft\u0131rabiliriz:\n    <\/p>\n<p>    <code-block><\/p>\n<pre><code>\n<!-- Filtrelenmi\u015f log verilerini g\u00f6steren bir tablo i\u00e7in CSS \u00f6rne\u011fi -->\n<style>\n  \/* Varsay\u0131lan stil: Masa\u00fcst\u00fc i\u00e7in *\/\n  .log-viewer-table {\n    width: 100%;\n    border-collapse: collapse;\n    margin: 20px 0;\n    font-size: 0.9em;\n  }\n\n  .log-viewer-table th, .log-viewer-table td {\n    border: 1px solid #ddd;\n    padding: 8px;\n    text-align: left;\n  }\n\n  \/* Mobil cihazlar i\u00e7in medya sorgusu *\/\n  @media (max-width: 768px) {\n    .log-viewer-table {\n      font-size: 0.8em; \/* Font boyutunu k\u00fc\u00e7\u00fclt *\/\n      display: block; \/* Blo\u011fa d\u00f6n\u00fc\u015ft\u00fcrerek yatay kayd\u0131rma imkan\u0131 sa\u011fla *\/\n      width: 100%;\n      overflow-x: auto; \/* Tablo i\u00e7eri\u011fi s\u0131\u011fmazsa yatay kayd\u0131rma \u00e7ubu\u011fu g\u00f6ster *\/\n    }\n\n    .log-viewer-table thead, .log-viewer-table tbody, .log-viewer-table th, .log-viewer-table td, .log-viewer-table tr {\n      display: block; \/* Her h\u00fccreyi ve sat\u0131r\u0131 ayr\u0131 bir blok olarak g\u00f6ster *\/\n    }\n\n    .log-viewer-table thead tr {\n      position: absolute;\n      top: -9999px;\n      left: -9999px; \/* Ba\u015fl\u0131klar\u0131 mobil g\u00f6r\u00fcn\u00fcmde gizle *\/\n    }\n\n    .log-viewer-table tr {\n      margin-bottom: 10px;\n      border: 1px solid #ccc;\n      border-radius: 4px;\n    }\n\n    .log-viewer-table td {\n      border: none;\n      border-bottom: 1px solid #eee;\n      position: relative;\n      padding-left: 50%; \/* \u0130\u00e7erik i\u00e7in alan b\u0131rak *\/\n      text-align: right;\n    }\n\n    .log-viewer-table td:before {\n      position: absolute;\n      top: 6px;\n      left: 6px;\n      width: 45%;\n      padding-right: 10px;\n      white-space: nowrap;\n      text-align: left;\n      font-weight: bold;\n      \/* data-label attribute'unu kullanarak ba\u015fl\u0131klar\u0131 otomatik ekleyebiliriz *\/\n      \/* content: attr(data-label); *\/\n    }\n  }\n<\/style>\n\n<!-- \u00d6rnek bir log tablosu -->\n<table class=\"log-viewer-table\">\n  <thead>\n    <tr>\n      <th>Timestamp<\/th>\n      <th>Service<\/th>\n      <th>Level<\/th>\n      <th>Message<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td data-label=\"Timestamp\">2023-10-27 10:30:00<\/td>\n      <td data-label=\"Service\">auth-service<\/td>\n      <td data-label=\"Level\">INFO<\/td>\n      <td data-label=\"Message\">User 'john.doe' logged in.<\/td>\n    <\/tr>\n    <tr>\n      <td data-label=\"Timestamp\">2023-10-27 10:30:01<\/td>\n      <td data-label=\"Service\">payment-service<\/td>\n      <td data-label=\"Level\">WARN<\/td>\n      <td data-label=\"Message\">Payment gateway response slow.<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n        <\/pre>\n<p><\/code><br \/>\n    <\/code-block><\/p>\n<p>\n        Bu CSS media query \u00f6rne\u011fi, 768 pikselden daha k\u00fc\u00e7\u00fck ekran geni\u015fliklerine sahip cihazlar i\u00e7in <code>.log-viewer-table<\/code> s\u0131n\u0131f\u0131na sahip tablolar\u0131n g\u00f6r\u00fcn\u00fcm\u00fcn\u00fc nas\u0131l de\u011fi\u015ftirece\u011fini g\u00f6sterir. Mobil g\u00f6r\u00fcn\u00fcmde, tablo h\u00fccreleri blok elementlere d\u00f6n\u00fc\u015ft\u00fcr\u00fclerek yatay kayd\u0131rma \u00e7ubuklar\u0131 olmadan i\u00e7eri\u011fin daha okunakl\u0131 bir \u015fekilde sunulmas\u0131 sa\u011flan\u0131r. Bu, Pipeline kurallar\u0131 ile sadele\u015ftirilmi\u015f log verilerinin, kullan\u0131c\u0131 dostu ve eri\u015filebilir dashboard'lar arac\u0131l\u0131\u011f\u0131yla t\u00fcm ekip \u00fcyelerine ula\u015ft\u0131r\u0131lmas\u0131n\u0131n ne kadar \u00f6nemli oldu\u011funu vurgular.\n    <\/p>\n<h2>Sonu\u00e7: Gelece\u011fin Log Y\u00f6netimi ve S\u0131k\u00e7a Sorulan Sorular<\/h2>\n<p>\n        New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile ge\u00e7i\u015f yapmak, modern log y\u00f6netiminin ka\u00e7\u0131n\u0131lmaz bir ad\u0131m\u0131d\u0131r. Bu ge\u00e7i\u015f, sadece maliyetleri optimize etmekle kalmaz, ayn\u0131 zamanda g\u00f6zlemlenebilirlik stratejinizi de g\u00fc\u00e7lendirir. Log verilerinizin kalitesini art\u0131rarak, daha h\u0131zl\u0131 sorun tespiti, daha do\u011fru analizler ve daha etkin operasyonel s\u00fcre\u00e7ler elde edersiniz. Terraform'un g\u00fcc\u00fc sayesinde, bu karma\u015f\u0131k ge\u00e7i\u015fi otomatize edebilir, kurallar\u0131n\u0131z\u0131 kod olarak y\u00f6netebilir ve CI\/CD s\u00fcre\u00e7lerinize entegre edebilirsiniz. Bu, log altyap\u0131n\u0131z\u0131 daha \u00e7evik, \u015feffaf ve g\u00fcvenilir hale getirir. Art\u0131k, sadece loglar\u0131 toplamakla kalmay\u0131p, onlardan ger\u00e7ek de\u011feri \u00e7\u0131karabilece\u011finiz, daha ak\u0131ll\u0131 ve proaktif bir g\u00f6zlemlenebilirlik ekosistemine sahipsiniz. Gelecekte, Pipeline Cloud Kurallar\u0131 daha da geli\u015ferek yapay zeka ve makine \u00f6\u011frenimi destekli filtreleme ve d\u00f6n\u00fc\u015ft\u00fcrme yetenekleriyle entegre olabilir, log y\u00f6netimini tamamen otomatik ve \u00f6ng\u00f6r\u00fcc\u00fc bir s\u00fcrece d\u00f6n\u00fc\u015ft\u00fcrebilir.\n    <\/p>\n<h3>S\u0131k\u00e7a Sorulan Sorular (SSS)<\/h3>\n<ol>\n<li>\n            <strong>Drop kurallar\u0131n\u0131 tamamen kapatmal\u0131 m\u0131y\u0131m?<\/strong><\/p>\n<p>Hay\u0131r, acele etmeyin. Yeni Pipeline Cloud kurallar\u0131n\u0131z\u0131n beklendi\u011fi gibi \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan ve istenen loglar\u0131 d\u00fc\u015f\u00fcrd\u00fc\u011f\u00fcnden veya d\u00f6n\u00fc\u015ft\u00fcrd\u00fc\u011f\u00fcnden emin olana kadar mevcut Drop kurallar\u0131n\u0131z\u0131 bir s\u00fcre daha etkin tutun. Bu, bir \"g\u00fcvenli geri d\u00f6n\u00fc\u015f\" mekanizmas\u0131 sa\u011flar. Gerekli do\u011frulamalar\u0131 yapt\u0131ktan ve yeni sistemin istikrarl\u0131 \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olduktan sonra, ilgili eski Drop kurallar\u0131n\u0131 a\u015famal\u0131 olarak devre d\u0131\u015f\u0131 b\u0131rak\u0131p silebilirsiniz. Paralel \u00e7al\u0131\u015fma s\u00fcresi, riskleri minimize etmek i\u00e7in \u00f6nemlidir.<\/p>\n<\/li>\n<li>\n            <strong>RegEx'lerim \u00e7ok karma\u015f\u0131k, nas\u0131l test edebilirim?<\/strong><\/p>\n<p>Karma\u015f\u0131k RegEx'leri do\u011frudan \u00fcretim ortam\u0131na uygulamadan \u00f6nce kapsaml\u0131 bir \u015fekilde test etmek hayati \u00f6neme sahiptir. New Relic'in kendi RegEx test arac\u0131n\u0131 kullanabilirsiniz. Ayr\u0131ca, <a href=\"https:\/\/regex101.com\/\">regex101.com<\/a> veya <a href=\"https:\/\/regexr.com\/\">regexr.com<\/a> gibi online RegEx test siteleri, ger\u00e7ek log \u00f6rneklerinizle desenlerinizi e\u015fle\u015ftirmek ve hatalar\u0131 ay\u0131klamak i\u00e7in harika kaynaklard\u0131r. Bu ara\u00e7lar, RegEx'inizin hangi b\u00f6l\u00fcmlerinin neyle e\u015fle\u015fti\u011fini g\u00f6rsel olarak g\u00f6stererek sorunlar\u0131 kolayca tespit etmenizi sa\u011flar.<\/p>\n<\/li>\n<li>\n            <strong>Ge\u00e7i\u015f s\u0131ras\u0131nda veri kayb\u0131 ya\u015far m\u0131y\u0131m?<\/strong><\/p>\n<p>Do\u011fru bir ge\u00e7i\u015f stratejisi izlendi\u011finde veri kayb\u0131 riski minimuma indirilebilir. Yeni Pipeline kurallar\u0131n\u0131z\u0131 devreye almadan \u00f6nce dikkatlice test edin ve eski Drop kurallar\u0131n\u0131z\u0131 hemen kald\u0131rmay\u0131n. Bir ge\u00e7i\u015f periyodu boyunca hem eski hem de yeni kurallar\u0131n paralel \u00e7al\u0131\u015fmas\u0131na izin verin. Yeni kurallar\u0131n d\u00fczg\u00fcn \u00e7al\u0131\u015ft\u0131\u011f\u0131ndan emin olduktan sonra eski kurallar\u0131 devre d\u0131\u015f\u0131 b\u0131rak\u0131n. Bu katmanl\u0131 yakla\u015f\u0131m, herhangi bir beklenmedik davran\u0131\u015f durumunda h\u0131zl\u0131ca geri d\u00f6nmenizi sa\u011flar.<\/p>\n<\/li>\n<li>\n            <strong>Terraform d\u0131\u015f\u0131ndan olu\u015fturulan kurallar\u0131 nas\u0131l y\u00f6netirim?<\/strong><\/p>\n<p>E\u011fer baz\u0131 Pipeline Cloud kurallar\u0131n\u0131z Terraform d\u0131\u015f\u0131nda (\u00f6rne\u011fin New Relic UI \u00fczerinden) olu\u015fturulduysa ve bunlar\u0131 Terraform state'inize dahil etmek istiyorsan\u0131z, <code>terraform import<\/code> komutunu kullanabilirsiniz. Bu komut, mevcut bir New Relic kayna\u011f\u0131n\u0131 Terraform state'inize aktarman\u0131z\u0131 sa\u011flar. Ard\u0131ndan, bu kural\u0131 Terraform yap\u0131land\u0131rma dosyan\u0131zda tan\u0131mlayarak gelecekteki de\u011fi\u015fiklikleri Terraform \u00fczerinden y\u00f6netebilirsiniz. Bu, t\u00fcm altyap\u0131n\u0131z\u0131n \"kod olarak\" tutulmas\u0131 prensibini s\u00fcrd\u00fcrmek i\u00e7in \u00f6nemlidir.<\/p>\n<\/li>\n<\/ol>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"Log verileri g\u00fcn\u00fcm\u00fcz modern uygulamalar\u0131n\u0131n g\u00f6zlemlenebilirli\u011fi i\u00e7in hayati \u00f6neme sahip olsa da, bu verilerin y\u00f6netimi giderek karma\u015f\u0131k ve&hellip;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1341],"tags":[],"class_list":{"0":"post-33407","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-cloud","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi<\/title>\n<meta name=\"description\" content=\"Log verileri g\u00fcn\u00fcm\u00fcz modern uygulamalar\u0131n\u0131n g\u00f6zlemlenebilirli\u011fi i\u00e7in hayati \u00f6neme sahip olsa da, bu verilerin y\u00f6netimi giderek karma\u015f\u0131k ve maliyetli hale gelebilir. Gereksiz veya d\u00fc\u015f\u00fck de\u011ferli loglar\u0131n birikmesi, sadece depolama ve i\u015fleme maliyetlerini art\u0131rmakla kalmaz, ayn\u0131 zamanda kritik bilgilerin g\u00f6zden ka\u00e7mas\u0131na neden olan bir \u201cveri g\u00fcr\u00fclt\u00fcs\u00fc\u201d yarat\u0131r. \u0130\u015fte bu noktada, New Relic kullan\u0131c\u0131lar\u0131 i\u00e7in eski usul Drop Kurallar\u0131ndan, daha esnek ve g\u00fc\u00e7l\u00fc Pipeline Cloud Kurallar\u0131na Terraform ile ge\u00e7i\u015f yapmak, hem operasyonel verimlili\u011fi art\u0131rman\u0131n hem de maliyetleri optimize etmenin anahtar\u0131d\u0131r. Bu rehber, ge\u00e7i\u015f s\u00fcrecini ad\u0131m ad\u0131m a\u00e7\u0131klayacak ve Terraform&#039;un g\u00fcc\u00fcn\u00fc kullanarak bu d\u00f6n\u00fc\u015f\u00fcm\u00fc nas\u0131l otomatikle\u015ftirebilece\u011finizi g\u00f6sterecektir.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi\" \/>\n<meta property=\"og:description\" content=\"Log verileri g\u00fcn\u00fcm\u00fcz modern uygulamalar\u0131n\u0131n g\u00f6zlemlenebilirli\u011fi i\u00e7in hayati \u00f6neme sahip olsa da, bu verilerin y\u00f6netimi giderek karma\u015f\u0131k ve maliyetli hale gelebilir. Gereksiz veya d\u00fc\u015f\u00fck de\u011ferli loglar\u0131n birikmesi, sadece depolama ve i\u015fleme maliyetlerini art\u0131rmakla kalmaz, ayn\u0131 zamanda kritik bilgilerin g\u00f6zden ka\u00e7mas\u0131na neden olan bir \u201cveri g\u00fcr\u00fclt\u00fcs\u00fc\u201d yarat\u0131r. \u0130\u015fte bu noktada, New Relic kullan\u0131c\u0131lar\u0131 i\u00e7in eski usul Drop Kurallar\u0131ndan, daha esnek ve g\u00fc\u00e7l\u00fc Pipeline Cloud Kurallar\u0131na Terraform ile ge\u00e7i\u015f yapmak, hem operasyonel verimlili\u011fi art\u0131rman\u0131n hem de maliyetleri optimize etmenin anahtar\u0131d\u0131r. Bu rehber, ge\u00e7i\u015f s\u00fcrecini ad\u0131m ad\u0131m a\u00e7\u0131klayacak ve Terraform&#039;un g\u00fcc\u00fcn\u00fc kullanarak bu d\u00f6n\u00fc\u015f\u00fcm\u00fc nas\u0131l otomatikle\u015ftirebilece\u011finizi g\u00f6sterecektir.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-02T10:31:46+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"26 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi\",\"datePublished\":\"2025-11-02T10:31:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/\"},\"wordCount\":4593,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"articleSection\":[\"Cloud\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/\",\"name\":\"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-11-02T10:31:46+00:00\",\"description\":\"Log verileri g\u00fcn\u00fcm\u00fcz modern uygulamalar\u0131n\u0131n g\u00f6zlemlenebilirli\u011fi i\u00e7in hayati \u00f6neme sahip olsa da, bu verilerin y\u00f6netimi giderek karma\u015f\u0131k ve maliyetli hale gelebilir. Gereksiz veya d\u00fc\u015f\u00fck de\u011ferli loglar\u0131n birikmesi, sadece depolama ve i\u015fleme maliyetlerini art\u0131rmakla kalmaz, ayn\u0131 zamanda kritik bilgilerin g\u00f6zden ka\u00e7mas\u0131na neden olan bir \u201cveri g\u00fcr\u00fclt\u00fcs\u00fc\u201d yarat\u0131r. \u0130\u015fte bu noktada, New Relic kullan\u0131c\u0131lar\u0131 i\u00e7in eski usul Drop Kurallar\u0131ndan, daha esnek ve g\u00fc\u00e7l\u00fc Pipeline Cloud Kurallar\u0131na Terraform ile ge\u00e7i\u015f yapmak, hem operasyonel verimlili\u011fi art\u0131rman\u0131n hem de maliyetleri optimize etmenin anahtar\u0131d\u0131r. Bu rehber, ge\u00e7i\u015f s\u00fcrecini ad\u0131m ad\u0131m a\u00e7\u0131klayacak ve Terraform'un g\u00fcc\u00fcn\u00fc kullanarak bu d\u00f6n\u00fc\u015f\u00fcm\u00fc nas\u0131l otomatikle\u015ftirebilece\u011finizi g\u00f6sterecektir.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi","description":"Log verileri g\u00fcn\u00fcm\u00fcz modern uygulamalar\u0131n\u0131n g\u00f6zlemlenebilirli\u011fi i\u00e7in hayati \u00f6neme sahip olsa da, bu verilerin y\u00f6netimi giderek karma\u015f\u0131k ve maliyetli hale gelebilir. Gereksiz veya d\u00fc\u015f\u00fck de\u011ferli loglar\u0131n birikmesi, sadece depolama ve i\u015fleme maliyetlerini art\u0131rmakla kalmaz, ayn\u0131 zamanda kritik bilgilerin g\u00f6zden ka\u00e7mas\u0131na neden olan bir \u201cveri g\u00fcr\u00fclt\u00fcs\u00fc\u201d yarat\u0131r. \u0130\u015fte bu noktada, New Relic kullan\u0131c\u0131lar\u0131 i\u00e7in eski usul Drop Kurallar\u0131ndan, daha esnek ve g\u00fc\u00e7l\u00fc Pipeline Cloud Kurallar\u0131na Terraform ile ge\u00e7i\u015f yapmak, hem operasyonel verimlili\u011fi art\u0131rman\u0131n hem de maliyetleri optimize etmenin anahtar\u0131d\u0131r. Bu rehber, ge\u00e7i\u015f s\u00fcrecini ad\u0131m ad\u0131m a\u00e7\u0131klayacak ve Terraform'un g\u00fcc\u00fcn\u00fc kullanarak bu d\u00f6n\u00fc\u015f\u00fcm\u00fc nas\u0131l otomatikle\u015ftirebilece\u011finizi g\u00f6sterecektir.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/","og_locale":"tr_TR","og_type":"article","og_title":"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi","og_description":"Log verileri g\u00fcn\u00fcm\u00fcz modern uygulamalar\u0131n\u0131n g\u00f6zlemlenebilirli\u011fi i\u00e7in hayati \u00f6neme sahip olsa da, bu verilerin y\u00f6netimi giderek karma\u015f\u0131k ve maliyetli hale gelebilir. Gereksiz veya d\u00fc\u015f\u00fck de\u011ferli loglar\u0131n birikmesi, sadece depolama ve i\u015fleme maliyetlerini art\u0131rmakla kalmaz, ayn\u0131 zamanda kritik bilgilerin g\u00f6zden ka\u00e7mas\u0131na neden olan bir \u201cveri g\u00fcr\u00fclt\u00fcs\u00fc\u201d yarat\u0131r. \u0130\u015fte bu noktada, New Relic kullan\u0131c\u0131lar\u0131 i\u00e7in eski usul Drop Kurallar\u0131ndan, daha esnek ve g\u00fc\u00e7l\u00fc Pipeline Cloud Kurallar\u0131na Terraform ile ge\u00e7i\u015f yapmak, hem operasyonel verimlili\u011fi art\u0131rman\u0131n hem de maliyetleri optimize etmenin anahtar\u0131d\u0131r. Bu rehber, ge\u00e7i\u015f s\u00fcrecini ad\u0131m ad\u0131m a\u00e7\u0131klayacak ve Terraform'un g\u00fcc\u00fcn\u00fc kullanarak bu d\u00f6n\u00fc\u015f\u00fcm\u00fc nas\u0131l otomatikle\u015ftirebilece\u011finizi g\u00f6sterecektir.","og_url":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-11-02T10:31:46+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"26 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi","datePublished":"2025-11-02T10:31:46+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/"},"wordCount":4593,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"articleSection":["Cloud"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/","url":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/","name":"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-11-02T10:31:46+00:00","description":"Log verileri g\u00fcn\u00fcm\u00fcz modern uygulamalar\u0131n\u0131n g\u00f6zlemlenebilirli\u011fi i\u00e7in hayati \u00f6neme sahip olsa da, bu verilerin y\u00f6netimi giderek karma\u015f\u0131k ve maliyetli hale gelebilir. Gereksiz veya d\u00fc\u015f\u00fck de\u011ferli loglar\u0131n birikmesi, sadece depolama ve i\u015fleme maliyetlerini art\u0131rmakla kalmaz, ayn\u0131 zamanda kritik bilgilerin g\u00f6zden ka\u00e7mas\u0131na neden olan bir \u201cveri g\u00fcr\u00fclt\u00fcs\u00fc\u201d yarat\u0131r. \u0130\u015fte bu noktada, New Relic kullan\u0131c\u0131lar\u0131 i\u00e7in eski usul Drop Kurallar\u0131ndan, daha esnek ve g\u00fc\u00e7l\u00fc Pipeline Cloud Kurallar\u0131na Terraform ile ge\u00e7i\u015f yapmak, hem operasyonel verimlili\u011fi art\u0131rman\u0131n hem de maliyetleri optimize etmenin anahtar\u0131d\u0131r. Bu rehber, ge\u00e7i\u015f s\u00fcrecini ad\u0131m ad\u0131m a\u00e7\u0131klayacak ve Terraform'un g\u00fcc\u00fcn\u00fc kullanarak bu d\u00f6n\u00fc\u015f\u00fcm\u00fc nas\u0131l otomatikle\u015ftirebilece\u011finizi g\u00f6sterecektir.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/new-relic-drop-kurallarindan-pipeline-cloud-kurallarina-terraform-ile-gecis-rehberi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"New Relic Drop Kurallar\u0131ndan Pipeline Cloud Kurallar\u0131na Terraform ile Ge\u00e7i\u015f Rehberi"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33407","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=33407"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/33407\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=33407"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=33407"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=33407"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}