আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য
উপসর্গ
StatisticsCollector নীতি ব্যবহার করে তৈরি করা কাস্টম ভেরিয়েবল এজ UI-তে Analytics কাস্টম রিপোর্টে কাস্টম মাত্রার অধীনে দৃশ্যমান নয়।
ত্রুটি বার্তা
কোন ত্রুটি পরিলক্ষিত হয় না.
সম্ভাব্য কারণ
নিম্নলিখিত সারণী এই সমস্যার সম্ভাব্য কারণগুলি তালিকাভুক্ত করে:
কারণ | জন্য |
---|---|
কাস্টম ভেরিয়েবল মান নির্দেশিকা মেনে চলে না | এজ প্রাইভেট এবং পাবলিক ক্লাউড ব্যবহারকারীরা |
পরিসংখ্যান সংগ্রাহক নীতি বাস্তবায়ন করে API প্রক্সিতে কোনো ট্র্যাফিক নেই৷ | এজ প্রাইভেট এবং পাবলিক ক্লাউড ব্যবহারকারীরা |
কাস্টম ভেরিয়েবল পোস্টগ্রেস সার্ভারে পুশ করা হয়নি | এজ প্রাইভেট ক্লাউড ব্যবহারকারীরা |
সেই কারণের সম্ভাব্য রেজোলিউশন দেখতে টেবিলের একটি লিঙ্কে ক্লিক করুন।
কাস্টম ভেরিয়েবল মান নির্দেশিকা মেনে চলে না
রোগ নির্ণয়
StatisticsCollector পলিসিতে ব্যবহৃত কাস্টম ভেরিয়েবলের নাম যদি স্ট্যান্ডার্ড নির্দেশিকা মেনে না চলে ( রেজোলিউশন দেখুন), তাহলে এটি কাস্টম রিপোর্টে প্রদর্শিত হবে না।
নীচের কোড স্নিপেটটি দেখায় যে "প্রোডাক্ট আইডি" ভেরিয়েবল নামের একটি স্পেস রয়েছে, তাই এটি কাস্টম রিপোর্টে কাস্টম মাত্রার অধীনে প্রদর্শিত হবে না।
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="productID" ref="product id" type="string">999999</Statistic> </Statistics> </StatisticsCollector>
রেজোলিউশন
API প্রক্সির মধ্যে StatisticsCollector নীতিতে ব্যবহৃত কাস্টম ভেরিয়েবলের নামগুলি নিম্নলিখিত নির্দেশিকাগুলি মেনে চলা উচিত:
- নামের মধ্যে [az][0-9] এবং '_' অন্তর্ভুক্ত থাকতে পারে।
- নাম স্পেস অন্তর্ভুক্ত করতে পারে না. উদাহরণস্বরূপ, উপরে দেখানো কোড নমুনায়, ভেরিয়েবলের নাম "product_id" এ পরিবর্তন করা উচিত।
- মামলা উপেক্ষা করা হয়।
- নিম্নলিখিত লিঙ্কে টেবিলে তালিকাভুক্ত সংরক্ষিত কীওয়ার্ড অনুমোদিত নয়। উদাহরণস্বরূপ, "ব্যবহারকারী" অনুমোদিত নয়৷ আরও তথ্যের জন্য, SQL কী শব্দ দেখুন।
যদি সমস্যাটি থেকে যায়, তাহলে StatisticsCollector নীতি বাস্তবায়ন করে API প্রক্সিতে নো ট্রাফিক এ যান।
পরিসংখ্যান সংগ্রাহক নীতি বাস্তবায়ন করে API প্রক্সিতে কোনো ট্র্যাফিক নেই৷
রোগ নির্ণয়
যদি এপিআই প্রক্সিতে কোন ট্র্যাফিক না থাকে যা StatisticsCollector পলিসি প্রয়োগ করে, তাহলে কাস্টম ভেরিয়েবল কাস্টম রিপোর্টে প্রদর্শিত হবে না।
রেজোলিউশন
এপিআই প্রক্সিতে কিছু কল করুন যা পরিসংখ্যান সংগ্রাহক নীতি প্রয়োগ করে।
কিছু সময়ের জন্য অপেক্ষা করুন এবং কাস্টম রিপোর্টে কাস্টম মাত্রাগুলিতে কাস্টম ভেরিয়েবল(গুলি) উপস্থিত হয় কিনা তা পরীক্ষা করুন৷
যদি সমস্যাটি থেকে যায়, তাহলে Postgres সার্ভারে পুশ না করে কাস্টম ভেরিয়েবলে এগিয়ে যান।
কাস্টম ভেরিয়েবল পোস্টগ্রেস সার্ভারে পুশ করা হয়নি
রোগ নির্ণয়
যখন API প্রক্সিতে একটি কাস্টম ভেরিয়েবল তৈরি করা হয় এবং API কল করা হয়, তখন ভেরিয়েবলটি প্রথমে মেসেজ প্রসেসরে মেমরিতে সংরক্ষণ করা হয়। মেসেজ প্রসেসর তারপর নতুন ভেরিয়েবলের তথ্য ZooKeeper-এ পাঠায়, যা পোস্টগ্রেস সার্ভারে পোস্টগ্রেস ডাটাবেসে কলাম হিসেবে যোগ করতে পাঠায়।
মাঝে মাঝে, নেটওয়ার্ক সমস্যার কারণে ZooKeeper থেকে বিজ্ঞপ্তি পোস্টগ্রেস সার্ভারে নাও পৌঁছাতে পারে। এই ত্রুটির কারণে, কাস্টম ভেরিয়েবল কাস্টম রিপোর্টে উপস্থিত নাও হতে পারে।
কাস্টম ভেরিয়েবল কোথায় অনুপস্থিত তা সনাক্ত করতে:
- নিম্নলিখিত কমান্ড ব্যবহার করে ZooKeeper গাছ তৈরি করুন:
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh > zktree-output.txt
- ZooKeeper ট্রি আউটপুটে কাস্টম ভেরিয়েবলের জন্য অনুসন্ধান করুন।
- ZooKeeper গাছে কাস্টম ভেরিয়েবল বিদ্যমান থাকলে, পোস্টগ্রেস ডাটাবেসে কাস্টম ভেরিয়েবল যোগ করা হয়েছে কিনা তা পরীক্ষা করতে নিম্নলিখিত কমান্ডগুলি চালান:
- Postgres নোডে, PostgreSQL এ লগ ইন করুন:
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
- নিম্নলিখিত SQL ক্যোয়ারী চালান:
select column_name, data_type, character_maximum_length from INFORMATION_SCHEMA.COLUMNS where table_name = 'orgname.envname.fact';
- Postgres নোডে, PostgreSQL এ লগ ইন করুন:
- খুব সম্ভবত আপনি দেখতে পাবেন যে কাস্টম ভেরিয়েবল কলামটি ফ্যাক্ট টেবিলে অনুপস্থিত থাকবে যা কাস্টম মাত্রাগুলিতে প্রদর্শিত না হওয়ার কারণ।
রেজোলিউশন
সমাধান # 1: পোস্টগ্রেস সার্ভার পুনরায় চালু করুন
- Zookeeper থেকে Analytics এর সাথে প্রাসঙ্গিক সমস্ত তথ্য পড়তে বাধ্য করার জন্য Postgres সার্ভারটি পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
যদি সমস্যা থেকে যায়, তাহলে সমাধান #2 প্রয়োগ করুন।
সমাধান # 2: সম্পত্তি জোর করে চালু করুন
নীচের পদক্ষেপগুলি ব্যবহার করে ফোর্সনবোর্ড সম্পত্তি সক্ষম করুন:
- Postgres সার্ভার মেশিনে
/opt/apigee/customer/application/postgres-server.properties
ফাইল তৈরি করুন, যদি এটি ইতিমধ্যেই বিদ্যমান না থাকে। - এই ফাইলে নিম্নলিখিত লাইন যোগ করুন:
conf_pg-agent_forceonboard=true
- নিম্নলিখিত কমান্ডটি ব্যবহার করে নিশ্চিত করুন যে এই ফাইলটি Apigee-এর মালিকানাধীন:
chown apigee:apigee /opt/apigee/customer/application/postgres-server.properties
- Postgres সার্ভার পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- আপনার যদি একাধিক পোস্টগ্রেস সার্ভার থাকে তবে সমস্ত পোস্টগ্রেস সার্ভারে উপরের পদক্ষেপগুলি পুনরাবৃত্তি করুন।
- StatisticsCollector পলিসি ব্যবহার করে আপনার API প্রক্সি আনডিপ্লয় করুন এবং ডিপ্লোয় করুন।
- API কল চালান।
- কাস্টম রিপোর্টে কাস্টম মাত্রায় কাস্টম ভেরিয়েবল (গুলি) উপস্থিত হয় কিনা তা পরীক্ষা করুন৷
যদি সমস্যাটি থেকে যায়, Apigee Edge সাপোর্টের সাথে যোগাযোগ করুন।