Analytics কাস্টম রিপোর্টে কাস্টম ভেরিয়েবল দেখা যায় না

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন।
তথ্য

সমস্যার উপসর্গ

StatisticsCollector নীতি ব্যবহার করে তৈরি করা কাস্টম ভেরিয়েবল নতুন Edge UI-তে Analytics কাস্টম রিপোর্টে কাস্টম ডাইমেনশনের মধ্যে দেখা যায় না।

সমস্যার মেসেজ

কোনও সমস্যা দেখা যায়নি।

সম্ভাব্য কারণ

নিচের সারণীতে এই সমস্যার সম্ভাব্য কারণগুলি তালিকাভুক্ত করা হয়েছে:

কারণ এর জন্য
কাস্টম ভেরিয়েবল স্ট্যান্ডার্ড নির্দেশিকা মেনে চলছে না Edge প্রাইভেট ও পাবলিক ক্লাউড ব্যবহারকারী
StatisticsCollector নীতি প্রয়োগকারী API প্রক্সিতে কোনও ট্রাফিক নেই Edge Private এবং Public Cloud ব্যবহারকারী
Postgres সার্ভারে কাস্টম ভেরিয়েবল পুশ করা হয়নি Edge Private Cloud ব্যবহারকারী

সম্ভাব্য সমাধান দেখতে, টেবিলের কোনও লিঙ্কে ক্লিক করুন।

কাস্টম ভেরিয়েবল স্ট্যান্ডার্ড নির্দেশিকা মেনে চলছে না

ডায়াগনসিস

StatisticsCollector নীতিতে ব্যবহৃত কাস্টম ভেরিয়েবলের নাম স্ট্যান্ডার্ড নির্দেশিকা মেনে না চললে ( সমাধান দেখুন), সেটি কাস্টম রিপোর্টে দেখা যাবে না।

নিচের কোড স্নিপেট থেকে দেখা যাচ্ছে যে "product id" ভেরিয়েবেলের নামে স্পেস আছে, তাই এটি কাস্টম রিপোর্টের কাস্টম ডাইমেনশনে দেখা যাবে না।

  <StatisticsCollector name="publishPurchaseDetails">
    <Statistics>
      <Statistic name="productID" ref="product id" type="string">999999</Statistic>
    </Statistics>
  </StatisticsCollector>

রেজোলিউশন

API প্রক্সির মধ্যে StatisticsCollector নীতিতে ব্যবহৃত কাস্টম ভেরিয়েবলের নামগুলি নিম্নলিখিত নির্দেশিকাগুলি মেনে চলতে হবে:

  • নামে [a-z][0-9] এবং '_' থাকতে পারে।
  • নামে স্পেস দেওয়া যাবে না। যেমন, উপরে দেখানো কোড স্যাম্পেলে, ভেরিয়েবলের নাম "product_id" হিসেবে পরিবর্তন করতে হবে।
  • ছোট ও বড় হাতের অক্ষরের মধ্যে পার্থক্য উপেক্ষা করা হয়।
  • নিচের লিঙ্কে দেওয়া টেবিলে তালিকাভুক্ত রিজার্ভ করা কীওয়ার্ড ব্যবহার করার অনুমতি নেই। যেমন, "user" অনুমোদিত নয়। আরও তথ্যের জন্য, SQL কীওয়ার্ড দেখুন।

সমস্যাটি থেকে গেলে, StatisticsCollector নীতি প্রয়োগকারী API প্রক্সিতে কোনও ট্রাফিক নেই-এ যান।

StatisticsCollector নীতি প্রয়োগকারী API প্রক্সিতে কোনও ট্রাফিক নেই

ডায়াগনসিস

StatisticsCollector নীতি প্রয়োগ করে এমন API প্রক্সিতে কোনও ট্রাফিক না থাকলে, কাস্টম রিপোর্ট বিভাগে কাস্টম ভেরিয়েবল দেখা যাবে না।

রেজোলিউশন

API প্রক্সিতে কিছু কল করুন যা StatisticsCollector নীতি প্রয়োগ করে।

কিছুক্ষণ অপেক্ষা করুন এবং কাস্টম রিপোর্টে কাস্টম ডাইমেনশনে কাস্টম ভেরিয়েবল(গুলি) দেখা যাচ্ছে কিনা তা চেক করুন।

সমস্যাটি থেকে গেলে, কাস্টম ভেরিয়েবল Postgres Server-এ পুশ করা হয়নি লিঙ্কে যান।

কাস্টম ভেরিয়েবল Postgres সার্ভারে পুশ করা হয়নি

ডায়াগনসিস

API প্রক্সিতে কাস্টম ভেরিয়েবল তৈরি করা হলে এবং API কল করা হলে, ভেরিয়েবলটি প্রথমে মেসেজ প্রসেসরের ইন-মেমরিতে স্টোর করা হয়। তারপরে Message Processor, নতুন ভেরিয়েবেল সংক্রান্ত তথ্য ZooKeeper-কে পাঠায়, যা বিনিময়ে Postgres ডাটাবেসে কলাম হিসেবে যোগ করার জন্য Postgres সার্ভারে পাঠায়।

কখনও কখনও, নেটওয়ার্ক সমস্যার কারণে ZooKeeper থেকে Postgres সার্ভারে বিজ্ঞপ্তি নাও পৌঁছাতে পারে। এই সমস্যার কারণে, কাস্টম ভেরিয়েবল কাস্টম রিপোর্টে নাও দেখা যেতে পারে।

কাস্টম ভেরিয়েবল কোথায় নেই তা শনাক্ত করতে:

  1. নিম্নলিখিত কমান্ড ব্যবহার করে ZooKeeper ট্রি জেনারেট করুন:
    /opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt
  2. ZooKeeper ট্রি আউটপুটে কাস্টম ভেরিয়েবল সার্চ করুন।
  3. ZooKeeper ট্রিতে কাস্টম ভেরিয়েবেল থাকলে, Postgres ডেটাবেসে কাস্টম ভেরিয়েবেল যোগ করা হয়েছে কিনা তা চেক করতে নিম্নলিখিত কমান্ডগুলি এক্সিকিউট করুন:
    1. Postgres নোডে, PostgreSQL-এ লগ-ইন করুন:
      psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
    2. নিম্নলিখিত SQL কোয়েরি রান করুন:
      select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS
        where table_name = 'orgname.envname.fact';
  4. খুব সম্ভবত আপনি দেখতে পাবেন যে কাস্টম ভেরিয়েবল কলামটি ফ্যাক্ট টেবিলে নেই, এই কারণেই এটি কাস্টম ডাইমেনশনে দেখা যাচ্ছে না।

রেজোলিউশন

সমাধান #১: Postgres সার্ভার রিস্টার্ট করুন

  1. Postgres সার্ভার রিস্টার্ট করুন যাতে এটি Zookeeper থেকে Analytics-এর সাথে প্রাসঙ্গিক সব তথ্য পড়তে বাধ্য হয়:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

    সমস্যাটি থেকে গেলে, সমাধান #২ প্রয়োগ করুন।

সমাধান #২: প্রপার্টি forceonboard চালু করুন

নিচের ধাপগুলি অনুসরণ করে forceonboard প্রপার্টি চালু করুন:

  1. Postgres সার্ভার মেশিনে /opt/apigee/customer/application/postgres-server.properties ফাইল তৈরি করুন, যদি এটি আগে থেকে না থাকে।
  2. এই ফাইলে নিম্নলিখিত লাইন যোগ করুন:
    conf_pg-agent_forceonboard=true
  3. নিশ্চিত করুন যে এই ফাইলের মালিক Apigee, এর জন্য নিম্নলিখিত কমান্ড ব্যবহার করুন:
    chown apigee:apigee /opt/apigee/customer/application/postgres-server.properties
  4. Postgres সার্ভার রিস্টার্ট করুন:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
  5. আপনার একাধিক Postgres সার্ভার থাকলে, সব Postgres সার্ভারে উপরে উল্লেখ করা ধাপগুলি অনুসরণ করুন।
  6. StatisticsCollector নীতি ব্যবহার করে এমন API প্রক্সি আনডিপ্লয় ও ডিপ্লয় করুন।
  7. API কল রান করুন।
  8. কাস্টম ভেরিয়েবল কাস্টম রিপোর্টের কাস্টম ডাইমেনশনে দেখা যাচ্ছে কিনা তা চেক করুন।

সমস্যাটি থেকে গেলে, Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করুন।