Expand my Community achievements bar.

SOLVED

Set different values of variable(evar) for different environments

Avatar

Employee

Hi Analytics Team,

 

I have a tag with certain number of rules in it, which are setting different evars. Below is for example a final changes committed in the library. 

tarushar_0-1716797567530.png

 

With respect to the above, i have set three different environments(dev, stage, prod) as below.

tarushar_1-1716797630412.png

 

When i deploy these individual libraries to my dev, stage and prod environment. They all are setting the same evar(ex evar1).

Now, is there a way to segregate whether the evar1 value is generated from which environment? As when i map the values of evar1 in Adobe Analytics Workspace, i get all the values from each environment.

 

Thanks

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor and Adobe Champion

Well in best practice, you would have separate tracking for your environments... a tracking suite that is just Prod, a tracking suite that is just Dev, and a suite that is just Staging...

 

Jennifer_Dungan_1-1716817536849.png

 

 

Though, in my case, I send all Dev and Staging to the same "Test" Suite, and only have Prod fully separated (basically, you don't want all your test data corrupting your prod data).

 

I send all Dev and Staging to my single "Dev" suite.

Jennifer_Dungan_2-1716817574131.png

 

 

 

Now, in my case, if I need to see which data is coming from Dev1, or Dev2, or QA1 or QA2, etc I can just look at my URLs (which I track in a custom eVar)...  As you can see, we have multiple Dev and QA, etc environments for our developers to work on parallel initiatives...  All of these use the same "Dev" build, and therefore send into my Dev Suite.

 

However, if you really need to pass environment info, there is a Data Element for that type of info:

 

Jennifer_Dungan_0-1716817069613.png

 

You can set up these types of Data Elements, and send them to a dimension of your choice. The values will calculate within the environment and allow you to correlate or create segments in your reporting.

View solution in original post

7 Replies

Avatar

Correct answer by
Community Advisor and Adobe Champion

Well in best practice, you would have separate tracking for your environments... a tracking suite that is just Prod, a tracking suite that is just Dev, and a suite that is just Staging...

 

Jennifer_Dungan_1-1716817536849.png

 

 

Though, in my case, I send all Dev and Staging to the same "Test" Suite, and only have Prod fully separated (basically, you don't want all your test data corrupting your prod data).

 

I send all Dev and Staging to my single "Dev" suite.

Jennifer_Dungan_2-1716817574131.png

 

 

 

Now, in my case, if I need to see which data is coming from Dev1, or Dev2, or QA1 or QA2, etc I can just look at my URLs (which I track in a custom eVar)...  As you can see, we have multiple Dev and QA, etc environments for our developers to work on parallel initiatives...  All of these use the same "Dev" build, and therefore send into my Dev Suite.

 

However, if you really need to pass environment info, there is a Data Element for that type of info:

 

Jennifer_Dungan_0-1716817069613.png

 

You can set up these types of Data Elements, and send them to a dimension of your choice. The values will calculate within the environment and allow you to correlate or create segments in your reporting.

Avatar

Employee

Hi Jennifer,

 

It totally makes sense, all i thought is that it can be achieved through one reporting suite.

 

Will create new for stage and prod data capturing.

 

Thanks,

Tarun

Avatar

Community Advisor and Adobe Champion

Well it can be.. like I said, you can set up Data Elements to pick up the build stage and other build info...

 

But consider what might happen to you Production Data if something fails to set for classifying the data into "Dev" or "Prod", etc... You could potentially start over-counting or under-counting your data depending on how your segments are set up... if your team is running load or automated testing that generate high traffic in Dev or Staging, and that happens in conjunction with a failure it might cause a big discrepancy.... 

 

The final call is up to you, and what works for your organization... personally, I keep all analytics Prod data separate no matter what system I am using (Adobe, GA, etc... I always make sure I send prod to prod, and all dev/qa/staging/pre-prod/etc into an isolated dev account.

Avatar

Employee

Yes Jennifer, in my case too i want the stage and prod both to be separate. With above explanation i am pretty much clear with the way to achieve it.

 

It will not be a good option to capture the environment/build info so will go with creating new suite.

 

Thanks Again!

Tarun

Avatar

Community Advisor and Adobe Champion

Glad I could help! If you run into any problems, feel free to reach out.

Avatar

Adobe Champion

Hi @tarushar ,

There are only two ways I'm aware of that can help you segregate which value of eVar1 was set by which environment - 

1> You can have different report suites for each environment so you'll be able to report on individual values set by each report suite / environment.

2> You can below to reference existing environment and pass it in Adobe Analytics via additional variable to segregate eVar1 based upon environment used in single report suite.

_satellite.environment

// Returns
{
  id: "ENbe322acb4fc64dfdb603254ffe98b5d3",
  stage: "development"
}

 

Avatar

Employee

Hi Abhinav,

 

Thanks for your input, yes would go with the first choice.

 

Thanks

Tarun