আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য
উপসর্গ
অ্যানালিটিক্স ড্যাশবোর্ড (প্রক্সি পারফরম্যান্স, টার্গেট পারফরম্যান্স, ইত্যাদি) এজ UI-তে কোনো ডেটা দেখাচ্ছে না। সমস্ত ড্যাশবোর্ড নিম্নলিখিত বার্তা দেখায়:
No traffic in the selected date range
ত্রুটি বার্তা
এই সমস্যাটি পর্যবেক্ষণযোগ্য ত্রুটির কারণ হয় না।
সম্ভাব্য কারণ
নিম্নলিখিত সারণী এই সমস্যার সম্ভাব্য কারণগুলি তালিকাভুক্ত করে:
কারণ | জন্য |
---|---|
সংস্থা-পরিবেশের জন্য কোনো API ট্র্যাফিক নেই৷ | ব্যক্তিগত ক্লাউড ব্যবহারকারীদের জন্য প্রান্ত |
পোস্টগ্রেস ডেটাবেসে উপলভ্য ডেটা, কিন্তু UI-তে প্রদর্শিত হচ্ছে না | ব্যক্তিগত ক্লাউড ব্যবহারকারীদের জন্য প্রান্ত |
Analytics ডেটা পোস্টগ্রেস ডেটাবেসে পুশ করা হচ্ছে না | ব্যক্তিগত ক্লাউড ব্যবহারকারীদের জন্য প্রান্ত |
ভুল অ্যানালিটিক্স স্থাপনা | ব্যক্তিগত ক্লাউড ব্যবহারকারীদের জন্য প্রান্ত |
বাসি বিশ্লেষণ সার্ভার UUIDs | ব্যক্তিগত ক্লাউড ব্যবহারকারীদের জন্য প্রান্ত |
সংস্থা-পরিবেশের জন্য কোনো API ট্র্যাফিক নেই৷
রোগ নির্ণয়
- আপনি নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটি ব্যবহার করে বিশ্লেষণ ডেটা দেখার চেষ্টা করছেন এমন নির্দিষ্ট সময়ের জন্য নির্দিষ্ট সংস্থা-পরিবেশে API প্রক্সিগুলির জন্য ট্র্যাফিক আছে কিনা তা পরীক্ষা করুন:
- আপনার ব্যবহারকারীদের দ্বারা বর্তমানে ব্যবহৃত যে কোনো API-এর জন্য ট্রেস সক্ষম করুন এবং আপনি ট্রেসে কোনো অনুরোধ পেতে সক্ষম কিনা তা পরীক্ষা করুন।
- NGINX অ্যাক্সেস লগগুলি দেখুন (
/opt/apigee/var/log/edge-router/nginx/logs/access.log)
এবং নির্দিষ্ট সময়ের জন্য API প্রক্সিগুলির জন্য কোনও নতুন এন্ট্রি আছে কিনা তা দেখুন৷ - আপনি যদি API প্রক্সি থেকে লগ সার্ভারে তথ্য লগ করেন যেমন Syslog, Splunk, Loggly, ইত্যাদি, তাহলে আপনি নির্দিষ্ট সময়ের জন্য API প্রক্সিগুলির জন্য এই লগ সার্ভারগুলিতে কোনো এন্ট্রি আছে কিনা তা পরীক্ষা করতে পারেন।
- যদি নির্দিষ্ট সময়কালের জন্য কোনো ট্রাফিক (কোন API অনুরোধ না) না থাকে, তাহলে বিশ্লেষণ ডেটা পাওয়া যায় না। আপনি বিশ্লেষণ ড্যাশবোর্ডে "নির্বাচিত তারিখের পরিসরে ট্রাফিক নেই" দেখতে পাবেন।
রেজোলিউশন
- নির্দিষ্ট প্রতিষ্ঠান-পরিবেশে এক বা একাধিক API প্রক্সিতে কিছু কল করুন।
- কয়েক সেকেন্ডের জন্য অপেক্ষা করুন, এবং তারপর আওয়ার ট্যাবে বিশ্লেষণ ড্যাশবোর্ডগুলি দেখুন এবং ডেটা উপস্থিত হয় কিনা তা দেখুন।
- যদি সমস্যাটি অব্যাহত থাকে, তাহলে পোস্টগ্রেস ডেটাবেসে উপলব্ধ ডেটাতে এগিয়ে যান, কিন্তু UI তে প্রদর্শিত হচ্ছে না ।
পোস্টগ্রেস ডেটাবেসে উপলভ্য ডেটা, কিন্তু UI-তে প্রদর্শিত হচ্ছে না
উপসর্গ
প্রথমে, Postgres ডাটাবেসে সর্বশেষ Analytics ডেটার উপলব্ধতা নির্ধারণ করুন।
পোস্টগ্রেস মাস্টার নোডে সর্বশেষ বিশ্লেষণ ডেটা উপলব্ধ কিনা তা পরীক্ষা করতে:
- প্রতিটি পোস্টগ্রেস সার্ভারে লগ ইন করুন এবং আপনি মাস্টার পোস্টগ্রেস নোডে থাকলে যাচাই করতে নিম্নলিখিত কমান্ডটি চালান:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
- মাস্টার পোস্টগ্রেস নোডে, PostgreSQL এ লগ ইন করুন:
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
- পোস্টগ্রেস ডাটাবেসে নিম্নলিখিত SQL ক্যোয়ারী ব্যবহার করে আপনার org-env-এর জন্য টেবিলটি বিদ্যমান কিনা তা পরীক্ষা করুন:
\d analytics."orgname.envname.fact"
- নিম্নলিখিত SQL ক্যোয়ারী ব্যবহার করে Postgres ডাটাবেসে সর্বশেষ ডেটা উপলব্ধ কিনা তা পরীক্ষা করুন:
select max(client_received_start_timestamp) from analytics."orgname.envname.fact";
- যদি সর্বশেষ টাইমস্ট্যাম্পটি খুব পুরানো হয় (বা শূন্য), তাহলে এটি নির্দেশ করে যে পোস্টগ্রেস ডাটাবেসে ডেটা উপলব্ধ নেই। এই সমস্যার সম্ভাব্য কারণ হতে পারে যে ডেটা Qpid সার্ভার থেকে পোস্টগ্রেস ডাটাবেসে ঠেলে দেওয়া হয় না। পোস্টগ্রেস ডেটাবেসে পুশ না করে অ্যানালিটিক্স ডেটাতে এগিয়ে যান।
- যদি মাস্টার নোডের পোস্টগ্রেস ডাটাবেসে সর্বশেষ ডেটা পাওয়া যায়, তাহলে কেন ডেটা এজ UI-তে প্রদর্শিত হচ্ছে না তা নির্ণয় করতে নীচের পদক্ষেপগুলি অনুসরণ করুন।
রোগ নির্ণয়
- আপনার Chrome ব্রাউজারে বিকাশকারী সরঞ্জামগুলি সক্ষম করুন এবং নীচের পদক্ষেপগুলি ব্যবহার করে বিশ্লেষণ ড্যাশবোর্ডগুলির একটি থেকে ব্যবহৃত API পান:
- বিকাশকারী সরঞ্জামগুলি থেকে নেটওয়ার্ক ট্যাবটি নির্বাচন করুন।
- রেকর্ডিং শুরু করুন।
- Analytics ড্যাশবোর্ড পুনরায় লোড করুন।
- বিকাশকারী সরঞ্জামগুলিতে বাম দিকের প্যানেলে, "apiproxy?_optimized..." সহ সারিটি নির্বাচন করুন৷
- বিকাশকারী সরঞ্জামগুলিতে ডানদিকের প্যানেলে, "হেডার" ট্যাবটি নির্বাচন করুন এবং "অনুরোধ URL" নোট করুন৷
- এখানে ডেভেলপার টুল থেকে নমুনা আউটপুট:
প্রক্সি পারফরম্যান্স ড্যাশবোর্ডের জন্য ডেভেলপার টুলের নেটওয়ার্ক ট্যাব থেকে প্রক্সি পারফরম্যান্স ড্যাশবোর্ডে ব্যবহৃত API দেখানো নমুনা আউটপুট
- সরাসরি ব্যবস্থাপনা API কল চালান এবং আপনি ফলাফল পান কিনা তা পরীক্ষা করুন। প্রক্সি পারফরম্যান্স ড্যাশবোর্ডে ডে ট্যাবের জন্য এখানে একটি নমুনা API কল রয়েছে:
curl -u username:password "http://management_server_IP_address:8080/v1/organizations/ org_name/environments/env_name/stats/apiproxy?limit=14400& select=sum(message_count),sum(is_error),avg(total_response_time), avg(target_response_time)&sort=DESC&sortby=sum(message_count),sum(is_error), avg(total_response_time),avg(target_response_time)&timeRange=08%2F9%2F2017+ 18:00:00~08%2F10%2F2017+18:00:00&timeUnit=hour&tsAscending=true"
- আপনি যদি একটি সফল প্রতিক্রিয়া দেখেন কিন্তু কোনো ডেটা ছাড়াই, তাহলে এটি নির্দেশ করে যে ম্যানেজমেন্ট সার্ভার নেটওয়ার্ক সংযোগ সমস্যার কারণে পোস্টগ্রেস সার্ভার থেকে ডেটা আনতে অক্ষম।
- আপনি ম্যানেজমেন্ট সার্ভার থেকে Postgres সার্ভারের সাথে সংযোগ করতে সক্ষম কিনা তা পরীক্ষা করুন:
telnet Postgres_server_IP_address 5432
- আপনি Postgres সার্ভারের সাথে সংযোগ করতে অক্ষম হলে, পোর্ট 5432 এ কোন ফায়ারওয়াল সীমাবদ্ধতা আছে কিনা তা পরীক্ষা করে দেখুন।
- যদি ফায়ারওয়াল সীমাবদ্ধতা থাকে, তাহলে ম্যানেজমেন্ট সার্ভার পোস্টগ্রেস সার্ভার থেকে ডেটা টানতে অক্ষম হওয়ার কারণ হতে পারে।
রেজোলিউশন
- যদি ফায়ারওয়াল সীমাবদ্ধতা থাকে, তাহলে সেগুলি সরিয়ে ফেলুন যাতে ম্যানেজমেন্ট সার্ভার পোস্টগ্রেস সার্ভারের সাথে যোগাযোগ করতে পারে।
- যদি কোন ফায়ারওয়াল সীমাবদ্ধতা না থাকে, তাহলে এই সমস্যাটি নেটওয়ার্ক ত্রুটির কারণে হতে পারে।
- যদি ম্যানেজমেন্ট সার্ভারে কোনো নেটওয়ার্ক ত্রুটি থাকে, তাহলে এটি পুনরায় চালু করলে সমস্যাটি সমাধান হতে পারে।
- নীচের কমান্ডটি ব্যবহার করে একের পর এক সমস্ত ম্যানেজমেন্ট সার্ভার পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- আপনি এজ UI-তে বিশ্লেষণ ডেটা দেখতে সক্ষম কিনা তা পরীক্ষা করুন।
আপনি যদি এখনও ডেটা দেখতে না পান, Apigee Edge সহায়তার সাথে যোগাযোগ করুন।
Analytics ডেটা পোস্টগ্রেস ডেটাবেসে পুশ করা হচ্ছে না
রোগ নির্ণয়
যদি পোস্টগ্রেস ডেটাবেসে উপলভ্য ডেটাতে নির্ধারিত হিসাবে Qpid সার্ভার থেকে পোস্টগ্রেস ডেটাবেসে ডেটা পুশ করা না হয়, কিন্তু UI তে দেখানো না হয় , তাহলে নিম্নলিখিত পদক্ষেপগুলি সম্পাদন করুন:
- নিচের কমান্ডটি কার্যকর করার মাধ্যমে প্রতিটি Qpid সার্ভার চালু এবং চলমান কিনা তা পরীক্ষা করুন:
/opt/apigee/bin/apigee-service edge-qpid-server status
- যদি কোন Qpid সার্ভার ডাউন থাকে তবে এটি পুনরায় চালু করুন। যদি না হয়, ধাপ #5 এ যান।
/opt/apigee/bin/apigee-service edge-qpid-server restart
- কিছু সময়ের জন্য অপেক্ষা করুন এবং তারপরে পোস্টগ্রেস ডাটাবেসে সর্বশেষ ডেটা উপলব্ধ কিনা তা পুনরায় পরীক্ষা করুন।
- PostgreSQL এ লগ ইন করুন:
psql -h /opt/apigee/var/run/apigee-postgresql -U apigee apigee
- সর্বশেষ ডেটা উপলব্ধ কিনা তা পরীক্ষা করতে নীচের এসকিউএল কোয়েরিটি চালান:
select max(client_received_start_timestamp) from analytics."orgname.envname.fact";
- PostgreSQL এ লগ ইন করুন:
- যদি সর্বশেষ ডেটা পাওয়া যায়, তাহলে নিম্নলিখিত ধাপগুলি এড়িয়ে যান এবং রেজোলিউশন বিভাগে শেষ ধাপে যান। যদি সর্বশেষ ডেটা উপলব্ধ না হয়, তাহলে নিম্নলিখিত পদক্ষেপগুলি নিয়ে এগিয়ে যান।
- Qpid সার্ভার সারি থেকে বার্তাগুলি পোস্টগ্রেস ডাটাবেসে পুশ করা হচ্ছে কিনা তা পরীক্ষা করুন।
-
qpid-stat -q command
চালান এবং msgIn এবং msgOut কলামের মান পরীক্ষা করুন। - এখানে একটি নমুনা আউটপুট যা দেখায় যে msgIn এবং msgOut সমান নয়। এটি নির্দেশ করে যে Qpid সার্ভার থেকে পোস্টগ্রেস ডাটাবেসে বার্তা পাঠানো হচ্ছে না।
-
- যদি msgIn এবং msgOut কলামে কোনো মিল না থাকে, তাহলে Qpid সার্ভার লগ
/opt/apigee/var/log/edge-qpid-server/system.log
চেক করুন এবং কোনো ত্রুটি আছে কিনা দেখুন। - আপনি ত্রুটি বার্তা দেখতে পারেন যেমন "সম্ভবত পিজি এখনও ডাউন" বা "প্রান্তিক: দুঃখিত, অনেক ক্লায়েন্ট ইতিমধ্যেই" নীচের চিত্রে দেখানো হয়েছে:
2017-07-28 09:56:39,896 ax-q-axgroup001-persistpool-thread-3 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Found the exception to be retriable - . Error observed while trying to connect to jdbc:postgresql://PG_IP_address:5432/apigee Initial referenced UUID when execution started in this thread was a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d Probably PG is still down. PG set used - [a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d] 2017-07-28 09:56:39,896 ax-q-axgroup001-persistpool-thread-3 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Could not get JDBC Connection; nested exception is org.postgresql.util.PSQLException: FATAL: sorry, too many clients already 2017-07-28 09:56:53,617 pool-7-thread-1 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Found the exception to be retriable - . Error observed while trying to connect to jdbc:postgresql://PG_IP_address:5432/apigee Initial referenced UUID when execution started in this thread was a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d Probably PG is still down. PG set used - [a1ddf72f-ac77-49c0-a1fc-d0db6bf9991d] 2017-07-28 09:56:53,617 pool-7-thread-1 WARN c.a.a.d.c.ServerHandle - ServerHandle.logRetry() : Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (FATAL: sorry, too many clients already)
এটি ঘটতে পারে যদি Postgres সার্ভারটি অনেক বেশি SQL কোয়েরি চালায় বা CPU বেশি চলমান থাকে এবং তাই Qpid সার্ভারে সাড়া দিতে অক্ষম হয়।
রেজোলিউশন
- পোস্টগ্রেস সার্ভার এবং পোস্টগ্রেএসকিউএল পুনরায় চালু করুন নীচে দেখানো হয়েছে:
/opt/apigee/bin/apigee-service edge-postgres-server restart
/opt/apigee/bin/apigee-service apigee-postgresql restart
- এই পুনঃসূচনা নিশ্চিত করে যে সমস্ত পূর্ববর্তী SQL কোয়েরি বন্ধ হয়ে গেছে এবং পোস্টগ্রেস ডাটাবেসে নতুন সংযোগের অনুমতি দেওয়া উচিত।
- Analytics ড্যাশবোর্ড পুনরায় লোড করুন এবং বিশ্লেষণ ডেটা প্রদর্শিত হচ্ছে কিনা তা পরীক্ষা করুন।
যদি সমস্যাটি থেকে যায়, Apigee Edge সাপোর্টের সাথে যোগাযোগ করুন।
ভুল অ্যানালিটিক্স স্থাপনা
রোগ নির্ণয়
- নিম্নলিখিত API কল ব্যবহার করে বিশ্লেষণ স্থাপনের স্থিতি পান:
curl -u user_email:password http://management_server_host:port /v1/organizations/orgname/environments/envname/provisioning/axstatus
- API কলের ফলাফল থেকে Qpid এবং Postgres সার্ভারের স্থিতি পরীক্ষা করুন।
- যদি Qpid এবং Postgres সার্ভারের স্থিতি "SUCCESS" হিসাবে দেখানো হয়, তাহলে এটি নির্দেশ করে যে বিশ্লেষণ সার্ভারগুলি সঠিকভাবে তারযুক্ত। Stale Analytics সার্ভার UUID- এ এগিয়ে যান।
- যদি Qpid/Postgres সার্ভারের স্থিতি "অজানা" বা "ব্যর্থতা" হিসাবে দেখানো হয়, তাহলে এটি সংশ্লিষ্ট সার্ভারের সাথে একটি সমস্যা নির্দেশ করে।
উদাহরণস্বরূপ, নিম্নলিখিত দৃশ্যটি পোস্টগ্রেস সার্ভারগুলির অবস্থা "অজানা" হিসাবে দেখায়:
অ্যানালিটিক্স অনবোর্ডিংয়ের সময় কোনও ব্যর্থতা থাকলে এটি ঘটতে পারে। এই ব্যর্থতা ম্যানেজমেন্ট সার্ভার থেকে পোস্টগ্রেস সার্ভারে বার্তা পৌঁছাতে বাধা দেয়।
রেজোলিউশন
এই সমস্যাটি সাধারণত "ব্যর্থতা" বা "অজানা" দেখানো সার্ভারগুলি পুনরায় চালু করে সমাধান করা যেতে পারে।
- নিম্নোক্ত কমান্ডটি ব্যবহার করে প্রতিটি সার্ভার পুনরায় চালু করুন যার বিশ্লেষণ ওয়্যারিং স্থিতি "ব্যর্থতা" বা "অজানা" নির্দেশ করে:
/opt/apigee/apigee-service/bin/apigee-service component restart
- যেমন:
- আপনি যদি Qpid সার্ভারে সমস্যাটি দেখতে পান, তাহলে Qpid সার্ভারগুলি পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- আপনি যদি পোস্টগ্রেস সার্ভারে সমস্যাটি দেখতে পান, তবে মাস্টার এবং স্লেভ পোস্টগ্রেস সার্ভার নোড উভয়ই পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- আপনি যদি Qpid সার্ভারে সমস্যাটি দেখতে পান, তাহলে Qpid সার্ভারগুলি পুনরায় চালু করুন:
- উপরের উদাহরণে, পোস্টগ্রেস সার্ভারের জন্য "অজানা" বার্তাটি দেখানো হয়েছে, তাই আপনাকে মাস্টার এবং স্লেভ পোস্টগ্রেস সার্ভার উভয়ই পুনরায় চালু করতে হবে:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
বাসি বিশ্লেষণ সার্ভার UUIDs
রোগ নির্ণয়
- নিম্নলিখিত API কল ব্যবহার করে বিশ্লেষণ কনফিগারেশন পান:
curl -u user_email:password http://management-server-host:port/v1/analytics/groups/ax
এখানে উপরের API থেকে একটি নমুনা আউটপুট:
[ { "name" : "axgroup001", "properties" : { "consumer-type" : "ax" }, "scopes" : [ "myorg~prod", "myorg~test" ], "uuids" : { "aries-datastore" : [ ], "postgres-server" : [ "6777...2db14" ], "dw-server" : [ ], "qpid-server" : [ "774e...fb23", "29f3...8c11" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "774e...8c11" ], "datastores" : [ "6777...db14" ], "properties" : { } } ], "data-processors" : { } } ]
- নিশ্চিত করুন যে আউটপুটে নিম্নলিখিত তথ্য সঠিক:
- org-env নামগুলি "স্কোপ" উপাদানে তালিকাভুক্ত।
- Postgres সার্ভার এবং Qpid সার্ভারের UUID।
- Postgres সার্ভার নোডগুলির প্রতিটিতে নিম্নলিখিত কমান্ডটি চালিয়ে Postgres সার্ভার UUID গুলি পান:
curl 0:8084/v1/servers/self/uuid
- Qpid সার্ভার নোডগুলির প্রতিটিতে নিম্নলিখিত কমান্ডটি চালিয়ে Qpid সার্ভার UUID গুলি পান:
curl 0:8083/v1/servers/self/uuid
- Postgres সার্ভার নোডগুলির প্রতিটিতে নিম্নলিখিত কমান্ডটি চালিয়ে Postgres সার্ভার UUID গুলি পান:
- যদি সমস্ত তথ্য সঠিক হয়, তাহলে Analytics ডেটা পোস্টগ্রেস ডেটাবেসে পুশ না করে এগিয়ে যান।
- যদি Postgres এবং/অথবা Qpid সার্ভারের UUID ভুল হয়, তাহলে এটা সম্ভব যে ম্যানেজমেন্ট সার্ভারগুলি পুরানো UUID উল্লেখ করছে।
রেজোলিউশন
পুরানো UUID গুলি সরাতে এবং সার্ভারগুলির সঠিক UUID যোগ করতে, Apigee Edge সাপোর্টের সাথে যোগাযোগ করুন৷